2015-04-12 52 views
2

我试图在WinForm应用程序中捕获Ctrl+Shift+A keydown事件。这是我迄今试过的 -在WinForm应用程序中处理Ctrl + Shift + A

if (e.KeyCode == Keys.A && e.Modifiers == Keys.Control && e.Modifiers == Keys.Shift) 
{ 
    this.Close(); 
} 

但它不工作。我已经设置了KeyPreview = true

有什么想法?

回答

3

试试这个:

if (e.KeyCode == Keys.A && e.Modifiers == (Keys.Control | Keys.Shift)) 
{ 
    this.Close(); 
} 

或者这样:

if (e.Control && e.Shift && e.KeyCode == Keys.A) 
{ 
    this.Close(); 
} 
2

在你KeyDown事件处理程序:

if (e.KeyCode == Keys.A && e.Control && e.Shift) { 
    // ... 
} 
2

我个人认为这是最简单的方法。

if (e.Control && e.Shift && e.KeyCode == Keys.A) 
{ 
    this.Close(); 
}