我有这个文本框,用于捕获首选项配置的键盘快捷键。我使用低级键盘挂钩来捕获键并阻止它们执行操作,例如 Windows 键,但 Alt 键仍然通过并使我的文本框失去焦点。
如何阻止 Alt 键,使焦点在我的文本框中保持不变?
我有这个文本框,用于捕获首选项配置的键盘快捷键。我使用低级键盘挂钩来捕获键并阻止它们执行操作,例如 Windows 键,但 Alt 键仍然通过并使我的文本框失去焦点。
如何阻止 Alt 键,使焦点在我的文本框中保持不变?
private void textBox1_KeyDown(object sender, KeyEventArgs e)
{
if (e.Alt)
{
e.Handled = true;
}
}
您可以注册 keydown 事件并为传入的 args 执行以下操作:
private void myTextBox_KeyDown(object sender, KeyEventArgs e)
{
if(e.Alt)
e.SuppressKeyPress = true;
}
然后您像这样注册该活动:
this.myTextBox.KeyDown += new System.Windows.Forms.KeyEventHandler(this.myTextBox_KeyDown);
或者,如果您不使用 C# 1.0,您可以简化为:
this.myTextBox.KeyDown += this.myTextBox_KeyDown;