我目前正在制作一个简单的计算器,只是为了让我们重新开始上大学。 除了我试图从键盘分配,每件事情都很好。按加号添加,减去它减去。
但是当我输入一个数字并按下添加按钮时,它会完成所有操作,但不会清除加号的文本框。为什么这样做?
private void tbOne_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Add)
{
total1 += double.Parse(tbOne.Text);
tbTwo.Text = tbOne.Text + btnPlus.Text;
tbOne.Clear();
plusButtonC = true;
minusButtonC = false;
divideButton = false;
multiplyButton = false;
}
}
答案 0 :(得分:4)
您需要向事件表明您已按下handled按键以防止按键被传递到标准Windows事件处理程序。同样SuppressKeyPress以防止将密钥添加到文本框中。添加以下行:
e.Handled = true;
e.SuppressKeyPress = true;
值得注意的是SuppressKeyPress
设置也设置Handled
,但我喜欢明确。
正如@GrantWinney在评论中指出的那样,如果它是WPF,那么你只需要设置Handled
。