我無法捕捉按Ctrl +上一頁按鍵在WinForms應用程序ListView控件。C#捕獲按Ctrl + PageUp鍵按鍵
我使用此代碼來捕獲鍵擊 -
private void ListViewEx_KeyDown(object sender, KeyEventArgs e)
{
...
if(e.Control){
if((e.KeyCode^Keys.Left) == 0)
MessageBox.Show("Left"); //shows messagebox
else if((e.KeyCode^Keys.PageUp) == 0)
MessageBox.Show("PageUp"); //does not
...
}
我需要潛入的WndProc來處理這個關鍵?謝謝。
編輯:我已經發現這個工作,問題是在ListControl到達他們之前封裝TabControl處理這些鍵。
其實,在進一步的調查中,當我測試它時,你的代碼就會出現。 if代碼塊之前遺漏的代碼中是否發生了某些可能會干擾的代碼? – 2010-03-29 08:08:17
不,它不工作 - 我有一個派生的ListView控件,除Ctrl + PageUp或Ctrl + PageDown外,每個組合鍵都可以工作。這兩個人一直在關注其他一些控制。 – Axarydax 2010-03-29 08:33:47
好吧,我剛做了一個測試應用程序,這一切工作,當我租房進一步重現問題,並添加TabControl,我發現是TabControl誰eatin'我的鑰匙。 – Axarydax 2010-03-29 08:48:31