繁体   English   中英

C#-Windows窗体中的KeyDown事件问题

[英]C# - KeyDown Event Issue in Windows Form

加载主窗体时,我尝试按如下所示设置键事件处理程序:

private void FormMain_Load(object sender, EventArgs e)
{
    KeyDown += FormMain_KeyDown;
}

以及被称为的函数:

private void FormMain_KeyDown(object sender, KeyEventArgs e)
{
    if (e.KeyCode == Keys.Escape)
    {
        // Do something.
    }
}

问题在于表单对Escape(或我尝试的任何其他键)没有反应。 有趣的是,与同一项目不同的表单使用相似的代码而没有任何问题。 谁能告诉我我做错了吗?

表单上有一个称为KeyPreview的属性,您需要将其设置为true。 然后在按键时您的处理程序将触发,然后控件上具有焦点的任何处理程序将触发。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM