【发布时间】:2016-06-20 03:13:55
【问题描述】:
我目前有以下事件处理程序,它在我的表单代码中捕获 Ctrl+Enter 组合键:
private void Form1_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter && e.Control)
{
// Stuff
}
}
表单中还有两个非只读文本框,其中一个是多行的,而另一个不是。每当我按下 Ctrl+Enter 时,该事件都会得到处理,但当焦点位于任一 TextBox 中时,它也会注册为 Enter 按键。我想要做的是注册组合键没有 Enter 按键修改任一框中的文本。有什么办法可以做到这一点吗?
【问题讨论】:
-
在退出此事件处理程序之前,您是否将 Handled 属性设置为 true?
-
刚刚尝试过 - 没有任何区别
-
你应该使用
ProcessCmdKey。看我的回答。
标签: c# winforms events textbox keyboard