由於某些原因,我試圖在按下Esc鍵時讓表單關閉。此表單也有一個退出按鈕以及當我把代碼放在退出按鈕事件處理程序,它不起作用,所以我採取了一個單獨的事件處理程序來保存它,它仍然沒有工作。C#使用Esc鍵關閉表單時遇到的問題
這是我有:
private void buttonExit_Click(object sender, EventArgs e)
{
this.Close();
}
private void FormName_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Escape)
this.Close();
}
這是在您的方案中執行此操作的最佳方式。要了解爲什麼'KeyDown'事件解決方案無效,請參閱[KeyPreview](http://msdn.microsoft.com/zh-cn/library/system.windows.forms.form.keypreview.aspx)。 – Sinatr
@Sinatr,當然是'KeyPreview'需要被利用。我只是說有一個更可靠的方法來完成同樣的工作;無論如何不需要重新發明輪子。 –