C#Webbrowser控制keydown没有触发

时间:2011-10-28 12:41:21

标签: c# webbrowser-control

我有一个没有触发keydown事件的System.Windows.Forms webbrowser控件。

以下是代码:鼠标按下事件触发,但keydown事件不触发。是否有任何触发keydown事件的标准?

IWebBrowser2 browser;
        mshtml.HTMLDocument doc;
        mshtml.HTMLDocumentEvents2_Event iEvent;

        browser = (IWebBrowser2)_browser.ActiveXInstance;

        if (browser == null)
            return;

        doc = (HTMLDocument)browser.Document;

        if (doc == null)
            return;

        iEvent = (HTMLDocumentEvents2_Event)doc;

        if (iEvent != null)
        {
            iEvent.onkeydown += new mshtml.HTMLDocumentEvents2_onkeydownEventHandler(keyDown);
            iEvent.onmousedown += new HTMLDocumentEvents2_onmousedownEventHandler(iEvent_onmousedown);
        }
    }

1 个答案:

答案 0 :(得分:3)

尝试使用PreviewKeyDown事件代替KeyDown。由于PreviewKeyDownKeyDown事件之前触发。

检查此link以获取有关如何绑定此事件的更多信息。

希望这有帮助