Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/321.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在IE中添加右键菜单?_C#_Internet Explorer_Webbrowser Control - Fatal编程技术网

C# 如何在IE中添加右键菜单?

C# 如何在IE中添加右键菜单?,c#,internet-explorer,webbrowser-control,C#,Internet Explorer,Webbrowser Control,我已经做了一些研究,并且使用了将其添加到注册表的方法,但是我希望它只在用户打开我的使用webrowser控件的程序时出现。做这件事最好的方法是什么 按鼠标右键单击时,浏览器会创建oncontextmenu事件 如果浏览器未找到任何与此事件相关的用户附加事件,它将禁用自己的菜单 但是你想显示你自己的菜单 然后使用下面的代码 YOUR_ELEMENT.AttachEvent('oncontextmenu', INVOKE_METHOD_WHEN_EVENT_OCCURED); function I

我已经做了一些研究,并且使用了将其添加到注册表的方法,但是我希望它只在用户打开我的使用webrowser控件的程序时出现。做这件事最好的方法是什么

按鼠标右键单击时,浏览器会创建oncontextmenu事件

如果浏览器未找到任何与此事件相关的用户附加事件,它将禁用自己的菜单

但是你想显示你自己的菜单

然后使用下面的代码

YOUR_ELEMENT.AttachEvent('oncontextmenu', INVOKE_METHOD_WHEN_EVENT_OCCURED);

function INVOKE_METHOD_WHEN_EVENT_OCCURED(e)
{

...
  var menu = document.getElementById('popupmenu');
  menu.style.display='block'; //Showing the menu
  menu.style.left = latlong.x + x; //Positioning the menu
  menu.style.top = latlong.y + y;
...
do you othre stuff
...
}

使用HTML5,你也可以轻松地完成同样的事情。

你是在Javascript函数中实现右键单击行为,还是在其他地方实现右键单击行为?理想情况下,我不希望将Javascript代码注入页面。有一个上下文菜单,我想更改上下文菜单的选项。