我想创建一个自定义上下文菜单.我们的想法是创建一个带有textBox的面板,一个按钮和一个标签列表,并且能够在右键单击时显示它,并使其行为与contextMenu完全相同.我可以使用没有边框的表单,但我想可能有一个我可以派生的类,这将帮助我处理上下文菜单和阴影的positionnig.有任何想法吗?
谢谢
谢谢
编辑:清除一些想法的示例:假设您在表单上有标签,当您右键单击它(甚至左键单击)时,会出现一个菜单.此菜单不是经典的上下文菜单,而是一个自定义面板,其中包含我创建的控件.一个示例是顶部的搜索框,其中包含项目列表.输入字母时,列表将被修剪为匹配的项目,单击某个项目时,上下文菜单将消失,所选值将在我们首次单击的标签中生成.
解决方法
您可以使用此处描述的方法:
http://www.codeproject.com/Articles/22780/Super-Context-Menu-Strip
由于它使用ContextMenuStrip,您可以设置其位置:
contextMenuStrip1.Show(Cursor.Position);
和阴影效果:
http://msdn.microsoft.com/en-us/library/system.windows.controls.contextmenu.hasdropshadow.aspx