按文本框中的Enter键并执行按钮命令

hex*_*x c 29 c# textbox enter button acceptbutton

我想通过按下来执行我的搜索按钮后面的代码Enter.我有一个Accept Button属性到我的搜索按钮.但是,当我将我的按钮设置为不可见时,我的搜索不会执行.

我希望能够Enter在我的文本框内按下并执行我的按钮,而不可见.任何建议都会很棒!下面是我在KeyDown事件中的代码的一次尝试

if (e.KeyCode == Keys.Enter)
    {
        buttonSearch_Click((object)sender, (EventArgs)e);
    }
Run Code Online (Sandbox Code Playgroud)

Phi*_*ger 62

您可以注册到文本框的KeyDown-Event,查看按下的键是否Enter然后执行按钮的EventHandler:

private void buttonTest_Click(object sender, EventArgs e)
{
    MessageBox.Show("Hello World");
}

private void textBoxTest_KeyDown(object sender, KeyEventArgs e)
{
    if (e.KeyCode == Keys.Enter)
    {
        buttonTest_Click(this, new EventArgs());
    }
}
Run Code Online (Sandbox Code Playgroud)

  • 此外,您可以将 `e.Handled` 设置为 `true` 以避免发出哔声。 (3认同)

Car*_*rol 15

或者,您可以设置表单的.AcceptButton属性.Enter将自动创建一个click事件.

this.AcceptButton = this.buttonSearch;
Run Code Online (Sandbox Code Playgroud)