事件的原由是在作一個項目功能時,添加快捷鍵關閉聲音,這個鍵最終選擇了空格鍵,可是當按下空格鍵時,會把窗體中獲取焦點的控件(好比按鈕,文本框等)的單擊事件觸發,因此要屏蔽這個現象。spa
開始使用各類方法,在網上各類查,可是沒有什麼效果,最後在屬性列表中找到一個:Keypreview,說明上表示是 窗體上的控件是否向主窗體註冊鍵盤事件,默認是false,這時設置爲true。這樣還不行,還要在窗體的Keydown事件中進一步攔截,代碼以下:code
if (e.KeyCode == Keys.Space) { e.Handled = true;//表示已經處理了鍵盤消息 }
通過這兩步就完成了屏蔽。blog