我想控制我的 winform 应用程序的焦点。它由自定义列表框和其他几个组件组成。 我希望所有键盘事件都由我的窗口处理程序管理,以避免特定的控制键处理(例如,当我按下一个字符并且列表框获得焦点时,会选择以相应字母开头的项目,这不是正确的行为对于我的应用程序)。 我怎样才能实现这个目标?
最佳答案
确保表单的 KeyPreview 属性设置为 true。那么这段代码应该可以用于取消列表框的按键事件...
private void Form1_KeyPress(object sender, KeyPressEventArgs e)
{
if (this.ActiveControl == listBox1)
e.Handled = true;
}
KeyPress 事件可能不适用于您的所有场景。在这种情况下,我会尝试 KeyDown 事件。
关于c# - Winform键盘管理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1155840/