I have WebBrowser control and i want when right button is clicked and context menu appear to get the handle of that context menu.
is that possible?
I have WebBrowser control and i want when right button is clicked and context menu appear to get the handle of that context menu.
is that possible?
If all you want to display your own contextMenu instead. I posted a solution here that works for a winforms WebBrowser control:
How do you override the ContextMenu that appears when right clicking on winforms WebBrowser Control?
Yes.
You could reference the following code.
//this code assumes WebBrowser object(_webBrowser) is already initiated
//in class scope.
//this method is needed to execute when form is loaded.
//Register it to load event
private void Loaded(object sender, RoutedEventArgs e)
{
_webBrowser.LoadCompleted += _webBrowser_LoadCompleted;
}
private HTMLDocumentEvents2_Event _docEvent;
private void _webBrowser_LoadCompleted(object sender, NavigationEventArgs e)
{
if (_docEvent != null)
{
_docEvent.oncontextmenu -= new HTMLDocumentEvents2_oncontextmenuEventHandler(_docEvent_oncontextmenu);
}
if (_webBrowser.Document != null)
{
_docEvent = (HTMLDocumentEvents2_Event)_webBrowser.Document;
_docEvent.oncontextmenu += new HTMLDocumentEvents2_oncontextmenuEventHandler(_docEvent_oncontextmenu);
}
}
bool _docEvent_oncontextmenu(IHTMLEventObj pEvtObj)
{
//do something and determine you want whether context menu shows or not
//if you want to shows context menu, you'll need to return true.
return true;
}