如何防止Winforms控件收听键盘

时间:2008-11-24 09:22:07

标签: winforms controls click key enter

对于某个输入形式,我想使用键盘进行输入。我知道如何通过KeyPressed和KeyUp读取密钥,但问题是当控件获得焦点并且用户按下Enter键时,该控件将接收Click事件。有可能阻止这种行为吗?或者是否可以知道鼠标或键盘是否触发了Click事件?

3 个答案:

答案 0 :(得分:2)

这有帮助吗?来自Microsoft Knowledge Base

  

从按钮移动按钮的代码。单击()到按钮.MouseClick()

答案 1 :(得分:2)

如果您能够描述您想要的情况和确切行为,这会更容易......:)

您可以设置:

Form.KeyPreview = True

首先将关键事件发送到表单,然后发送到控件。这使您有机会在表单上捕获关键事件并“取消”它们:

e.Handled = True

More info

另外请确保您没有为表单设置AcceptButton!

答案 2 :(得分:0)

您还可以收听键盘事件并过滤掉键。