基本上,我希望能够在按下ENTER键时触发事件。我已经试过了:如何知道何时在文本框中按下回车键?
private void input_KeyDown(object sender, KeyEventArgs e)
{
if (e.Equals("{ENTER}"))
{
MessageBox.Show("Pressed enter.");
}
}
但是MessageBox从不出现。我怎样才能做到这一点?
基本上,我希望能够在按下ENTER键时触发事件。我已经试过了:如何知道何时在文本框中按下回车键?
private void input_KeyDown(object sender, KeyEventArgs e)
{
if (e.Equals("{ENTER}"))
{
MessageBox.Show("Pressed enter.");
}
}
但是MessageBox从不出现。我怎样才能做到这一点?
给这个一杆...
private void input_KeyDown(object sender, KeyEventArgs e)
{
if(e.KeyData == Keys.Enter)
{
MessageBox.Show("Pressed enter.");
}
}
谢谢你,这非常有用,足以让我找到自己的实际语法。我的语法是:if(e.Key == Key.Enter)//使用System.Windows.Input – user2010136 2016-07-28 22:04:38
你也可以这样做:
private void input_KeyDown(object sender, KeyEventArgs e)
{
if(e.KeyCode== Keys.Enter)
{
//Your business logic here.
}
}
与KeyCode
VS KeyData
唯一的区别是,KeyCode
可以检测KeyCode
修饰符组合(例如CTRL ,Shift + A),你不需要在这里。
在KeyUp上执行此操作可能是一个好主意(取决于您的情况)。 KeyUp每次释放一个密钥时会被调用一次,但是当key被关闭时keydown被不断调用。 – 2012-08-04 05:32:55