C# 如何检测“回车键打开”按钮
我正在使用这个代码。panelButtons[]是一组按钮C# 如何检测“回车键打开”按钮,c#,winforms,C#,Winforms,我正在使用这个代码。panelButtons[]是一组按钮 for (i = 0; i <= 15; i++) { int temp = i; panelButtons[temp].KeyPress += new KeyPressEventHandler(checkKeyPress); } } private void checkKeyPress(object a, KeyPre
for (i = 0; i <= 15; i++)
{
int temp = i;
panelButtons[temp].KeyPress += new KeyPressEventHandler(checkKeyPress);
}
}
private void checkKeyPress(object a, KeyPressEventArgs b)
{
if(b.KeyChar==(char)Keys.Enter || b.KeyChar==(char)Keys.Return)
{
DialogResult result = MessageBox.Show("Enter");
}
}
for(i=0;i处理该按钮的PreviewKeyDown事件,并将PreviewKeyDownEventArgs.IsInputKey设置为True
Private Sub Button1_PreviewKeyDown(sender As Object, e As PreviewKeyDownEventArgs) Handles Button1.PreviewKeyDown
If e.KeyCode = Keys.Enter Then e.IsInputKey = True
End Sub
我是否正确检测到任何键?请尝试。单击并查看当按下enter键时是否触发。问题与文本框中的问题相同。按钮本身处理要按下的“enter”键。因此,您必须避免这种行为。我想要的是防止enter或空格键触发panelButtons[temp]事件,这样它只能在鼠标单击时触发。是的..其他按钮可以正常工作。只有ENTER不能。您是否尝试在方法上放置断点并检查代码是否被调用?也就是说:事件处理程序是否不正确,或者它是否连线都没有?您没有包括
的初始位置>例如,从调用循环-是否可能根本没有调用它?我更新了我的答案:首先我说设置为false,更正是将属性设置为true非常感谢#swe。真是太棒了。