-1

我有一个 winform 应用程序,它有两个文本框和一个按钮。如果控件焦点在任何文本框上并且用户单击键盘“输入”按钮。按钮事件应该调用。

问题是我找不到 TextBox_KeyDown 来捕获“Enter”按键。在 Visual Studio 编辑器中,KeyDown、KeyPress、Keyup 属性为空。

4

2 回答 2

1

你可以这样做吗?

private void textBox1_KeyDown(object sender, KeyEventArgs e)
    {
        if (e.KeyCode == Keys.Enter)
        {

        }
    }
于 2013-08-28T14:42:41.527 回答
1

几件事。在我看来,您只需将AcceptButtonon设置Form为用户按下时要单击的按钮Enter。它将自动为您处理。

其次,如果不是这种情况,那么您需要将 设置为KeyPreview并处理 上true的方法:FormProcessCmdKeyForm

protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
{
    if (keyData == Keys.Enter)
    {
        // do something
    }
    else
    {
        base.ProcessCmdKey(ref msg, keyData);
    }
}
于 2013-08-28T14:39:51.067 回答