2012-07-16 36 views
0

我使用.NET Framework 4.5(Visual Studio 2012 RC Professional)在Visual C#中編寫應用程序。在這個應用程序中,我有一個WebBrowser元素。.net在某些按鍵上防止WebBrowser上的keyDown

當我執行一些按鍵操作時,如Ctrl + O,而不是按照我的表單所做的處理KeyDown事件的操作,WebBrowser自己處理事件。

我試圖用WebBrowser的previewKeyDown做些事情,但我不知道該怎麼做。

你能幫我解決嗎?

感謝

回答

2

你應該設置你的託管形式KeyPreview = true

+0

成功偵測預覽,但該事件傳播到web瀏覽器,而我不t要輸入 – Paris 2012-07-16 23:16:17

+0

'要僅處理表單級別的鍵盤事件並且不允許其他控件接收鍵盤事件,請在表單的KeyPress事件處理m中設置KeyPressEventArgs.Handled屬性ethod to true.' [來自MSDN這裏](http://msdn.microsoft.com/en-us/library/system.windows.forms.control.keypress.aspx) – Steve 2012-07-16 23:20:25

0

添加屬性

PreviewKeyDown = 「WindowKeyDown」

private void WindowKeyDown(object sender, KeyEventArgs e) 
    { 
    if (e.Key == Key.A && Keyboard.Modifiers == ModifierKeys.Control) 
    { 
     MessageBox.Show("CTRL + A Pressed!"); 
    } 
    } 

看看這個鏈接 here