在我的 C# 应用程序中,我处理CTRL和SHIFTinOnKeyDown
如下所示。它按预期工作。但是,当我按下 Logitech M705 上的中间按钮时,我会收到一系列不需要的按键事件。两者都 foo()
被bar()
调用,这显然是不受欢迎的行为。(我想驱动程序会生成几个按键来激活一些特殊的缩放工具?)
问:如何检测这些模拟按键?OnKeyDown
或者,在这种特殊情况下如何防止被调用?
protected override void OnKeyDown(System.Windows.Forms.KeyEventArgs e)
{
if (e.KeyCode == Keys.ShiftKey)
foo();
else if (e.KeyCode == Keys.ControlKey)
bar();
}