【发布时间】:2017-06-18 00:53:15
【问题描述】:
我目前正在处理一个项目,并想在我的窗口中添加一个KeyEventHandler,它会在按下一个键时触发一个功能。
然而,我的问题是,当我想添加这样的处理程序时
testObject.KeyDown += new KeyEventHandler(doSomethingOnKeyPress);
private void doSomethingOnKeyPress(object sender, KeyEventArgs e))
{
if (e.Control && e.KeyCode == Keys.R)
{
// do something
}
}
我收到程序无法将Forms.KeyEventHandler 转换为Input.KeyEventHandler 的错误。
谁能指导我在这个问题上的正确方向?
【问题讨论】:
-
你的testObject是什么类型的?显然,如果
doSomethingOnKeyPress匹配事件处理程序签名,则不需要使用构造函数+= new KeyEventHandler(doSomethingOnKeyPress)。testObject.KeyDown += doSomethingOnKeyPress会起作用。 -
我使用的测试对象是一个文本框
标签: c# winforms visual-studio user-interface event-handling