我有一个标准按钮,没有任何有趣的东西,一切都很完美:
private void Button_Click(object sender, EventArgs e)
{
//Whatever, is not important what's in it
}
问题是,当我点击一个按钮时,如果之后按下例如输入键或空格键,它将触发按钮,就像我点击它一样。
我试过弄乱这些属性,也没有任何帮助。 如何以(可能)简单的方式防止这种情况发生?
回答任何需要它的人(放入按钮内):
if (e is MouseEventArgs)
{
//what you want in for the button to do
}
答案 0 :(得分:2)
如果点击按钮EventArgs
是e
(并且包含有关点击的信息),您可以检查给定MouseEventArgs
的类型,否则只是{{} 1}}
EventArgs
答案 1 :(得分:0)
虽然Matteo Umili提供了一个有效的解决方案,但我认为如果有人发现它有用,我会分享这个解决方案:
只需将焦点从按钮移开到另一个控件即可。此解决方案需要另一个控件才能切换到焦点。在我的例子中,我使用的是标签。
private void button2_Click(object sender, EventArgs e)
{
label1.Focus();
}