12

如何对其进行编码,以便在按下回车键时,它的行为就像按下现有表单上的按钮一样?

假设表单上的按钮使其显示 hello 的显示消息

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

我怎么做到的,所以当按下回车键时它会做同样的事情(对于我的生活,我不记得了,它可能真的很简单而且我真的很愚蠢)

4

7 回答 7

20

表格?如果是,请选择表格。现在在“属性窗格”(默认情况下位于屏幕右下角)中,将AcceptButton属性更改为“buttonHello”。

请参阅Form.AcceptButton

获取或设置用户按 ENTER 键时单击的窗体上的按钮。

这是它在“属性”窗格中的样子:

在此处输入图像描述

于 2013-10-24T18:14:28.263 回答
8

捕获Enter按键按下事件,如下所示:

private void Form1_KeyDown(object sender, KeyEventArgs e) 
{
    if (e.KeyCode == Keys.Enter){
        button.PerformClick();
    }
}
于 2013-10-24T18:14:38.390 回答
3

在您的表单属性中,设置 AcceptButton = yourButton, 就是这样。

于 2018-12-16T03:19:04.433 回答
1

对于 WinForms:

using System.Windows.Forms; // reference

private void Form1_KeyDown(object sender, KeyEventArgs e) 
{
    if (e.KeyCode == Keys.Enter)
    {
        // do something
    }
}

对于 WPF:

using System.Windows.Input; // reference

private void Window_KeyDown(object sender, KeyEventArgs e)
{
    if (e.Key == Key.Enter)
    {
        // do something
    }
}

笔记

  • 此示例适用于 Enter 按钮,您可以轻松更改该更改 Keys.YOURKEY
  • 您需要首先在表单或窗口中添加事件。
于 2019-12-22T11:43:40.787 回答
0

您是否正在寻找这样的东西:-

private void tb_KeyDown(object sender, KeyEventArgs e) 
{
    if (e.KeyCode == Keys.Enter)        
        button.PerformClick();
}
于 2013-10-24T18:14:28.733 回答
0

Key Down事件处理程序添加到您的表单。然后检查是否已按下回车键

private void form_KeyDown(object sender, KeyEventArgs e)
{
    if(e.KeyCode == Keys.Enter)
        buttonHello.PerformClick();
}
于 2013-10-24T18:14:35.170 回答
0

您正在朝着“Magic Button”反模式行驶,症状是您想从其他地方驱动按钮。以某种方式将您想要的行为与按钮隔离(成员函数可以工作),然后从您喜欢的任何点调用相同的函数。如果你真的只是想回复回车键,最好的方法是,正如@Idle_mind 所建议的那样,使用AcceptButton.

于 2013-10-24T18:18:51.057 回答