如何在控件具有焦点时使用键盘关闭WinForm

Sae*_*ani 5 c# keyboard-shortcuts winforms

我如何关闭我的C#WinForms程序,同时有一些控件,如树视图,按钮和其他东西都存在于它们,他们有焦点,可能是他们有相同的键盘快捷键?

例如,在我的树视图中,如果按ALT + ESC键,节点将被删除.但我希望能够通过按ESC键调用'this.Close()'方法,无论是否有任何控件都有焦点.

谢谢.

V4V*_*tta 2

也许你可以通过覆盖来尝试这个Form

protected override bool ProcessDialogKey(Keys keyData)
{
    if (keyData == Keys.Escape)
    {
        this.Close();
        return true;
    }
    else
        return base.ProcessDialogKey(keyData);
}
Run Code Online (Sandbox Code Playgroud)