拦截IE上下文菜单单击WebBrowser控件

时间:2012-10-22 06:12:41

标签: c# winforms internet-explorer webbrowser-control

我正在使用WinForms,我添加了一个WebBrowser控件,并希望能够拦截IE浏览器的上下文菜单触发事件,因为浏览器控件是IE的一个实例。

我的意思是,我想拦截右键单击菜单项单击它自己的浏览器,我说我自己,因为它是一个IE实例,它在我的应用程序中,必须有一种方法来实现它。

我试着查看浏览器控件的事件,但没有任何东西可以帮助我。

感谢。

2 个答案:

答案 0 :(得分:2)

以下是取消WebBrowser上下文菜单的示例。这将有助于您继续前进:

// wb = WebBrowser control instance name
// attach to the DocumentCompleted event
wb.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(wb_DocumentCompleted);

void wb_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
    // when the document loading is completed, attach to the document context showing event
    wb.Document.ContextMenuShowing += new HtmlElementEventHandler(Document_ContextMenuShowing);
}

void Document_ContextMenuShowing(object sender, HtmlElementEventArgs e)
{
    // cancel showing context menu
    e.ReturnValue = false;
    // take a look at the 'e' parameter for everything else, you can get various information out of it
}

答案 1 :(得分:0)

设置webbrowser控件的以下简单属性

wbBrowser.IsWebBrowserContextMenuEnabled = false;