如何对其进行编码,以便在按下回车键时,它的行为就像按下现有表单上的按钮一样?
假设表单上的按钮使其显示 hello 的显示消息
private void buttonHello_Click(object sender, EventArgs e)
{
MessageBox.Show("Hello");
}
我怎么做到的,所以当按下回车键时它会做同样的事情(对于我的生活,我不记得了,它可能真的很简单而且我真的很愚蠢)
表格?如果是,请选择表格。现在在“属性窗格”(默认情况下位于屏幕右下角)中,将AcceptButton
属性更改为“buttonHello”。
获取或设置用户按 ENTER 键时单击的窗体上的按钮。
这是它在“属性”窗格中的样子:
捕获Enter按键按下事件,如下所示:
private void Form1_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter){
button.PerformClick();
}
}
在您的表单属性中,设置 AcceptButton = yourButton, 就是这样。
对于 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
}
}
笔记
Keys.YOURKEY
。您是否正在寻找这样的东西:-
private void tb_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter)
button.PerformClick();
}
将Key Down事件处理程序添加到您的表单。然后检查是否已按下回车键
private void form_KeyDown(object sender, KeyEventArgs e)
{
if(e.KeyCode == Keys.Enter)
buttonHello.PerformClick();
}
您正在朝着“Magic Button”反模式行驶,症状是您想从其他地方驱动按钮。以某种方式将您想要的行为与按钮隔离(成员函数可以工作),然后从您喜欢的任何点调用相同的函数。如果你真的只是想回复回车键,最好的方法是,正如@Idle_mind 所建议的那样,使用AcceptButton
.