表单上的KeyUp事件不会运行? C#

时间:2010-10-06 13:50:24

标签: c#

我想知道为什么当我发布密钥时,这段代码永远不会运行。

    private void Form1_KeyUp(object sender, KeyEventArgs e)
    {
        MessageBox.Show("It works!");
    }

在设计师中,这段代码照常添加:

this.KeyUp += new System.Windows.Forms.KeyEventHandler(this.Form1_KeyUp);

然而,像Form load这样的事件非常完美。这个问题有什么共同的解决方案吗?

3 个答案:

答案 0 :(得分:10)

您应该将表单的KeyPreview属性设置为true,这应该适用于您的代码。

答案 1 :(得分:2)

如果表单上有其他控件,请尝试将Form.KeyPreview属性设置为true: Key Preview on MSDN

答案 2 :(得分:0)

您必须确保当前表单上没有任何有效控件。将此代码放在Form.cs

 this.ActiveControl = null;