![](/img/trans.png)
[英]Make context menu ignore right-click when user is selecting a context menu item
[英]Add custom item to right click menu when user selects text
我想向用户选择一些文本并单击鼠标右键时出现的菜单添加一个自定义菜单项。 我搜索了很多,但没有得到任何答案。 也许我没有输入正确的关键字。
我正在使用C#。
我认为您无法在所有Windows应用程序中普遍做到这一点。 但是使用弹出菜单在您自己的应用程序中当然可以实现。
我也尝试了一种将项目添加到标准ContextMenu的方法,但失败了。 从我的角度来看,唯一的解决方案是将TextBox的ContextMenuStrip属性设置为ContextMenuStrip类的实例,并实现标准菜单项和自定义菜单项。 模仿标准操作很容易,因为TextBox类提供了所有必需的方法:剪切,复制,粘贴,SelectAll。
通用方法基本上是编写“自定义外壳程序扩展”。 在CodeProject上有一篇有关如何执行此操作的文章。
http://www.codeproject.com/Articles/174369/How-to-Write-Windows-Shell-Extension-with-NET-Lang
执行此操作的另一种方法是将其构建到您的应用程序中。 例如,您可能有一个文本编辑器,并且想要突出显示一个单词并获取该单词的定义。 为此,您需要实现一个上下文菜单。 在CodeReview.StackExchange上详细介绍了非常基础的概念。
https://codereview.stackexchange.com/questions/3983/c-programatically-creating-context-menu
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.