c#的menustrip绑定contextmenustrip

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c#的menustrip绑定contextmenustrip相关的知识,希望对你有一定的参考价值。

我把一个contextmenustrip关联到了menustrip。
我想在右键单击菜单条目时,弹出contextmenustrip。
但我如何在contextmenustrip中知道menustrip正选择了哪个条目呢?
谢谢

参考技术A 想了半天,没找到容易的方法,不过想到一个可能实现的方法,不过很麻烦。
先新建一个公共变量,接着把menustrip中所有的分项都加上MouseEnter事件,然后在MouseEnter事件里吧条目的name传给变量。这时候就知道鼠标在那个条目上了,然后在contextMenuStrip1_Opening事件里使用就好。
参考技术B 重复调用方法吧。本回答被提问者采纳

C# WinForm界面设计教程第12节——MenuStrip菜单

参考技术A 我是笑林新记,分享一下我使用C#的一些用法,希望对大家有帮助!

Visual Studio版本:Enterprise 2015

1、本节要点

本节课要讲的是菜单控件的使用,工具箱中有两种菜单MenuStrip和ContextMenuStrip,分别用于工具栏菜单和右键菜单。

2、MenuStrip菜单

首先是MenuStrip,这个从工具栏中拖过来默认就会紧贴最上面。

它可以有多级菜单,一级菜单像上图中的文件,编辑和编辑右边可以继续添加的的“请在此处键入”。二级菜单:编辑下面的编辑1和编辑1下面的继续新增。三级菜单:编辑1右侧的编辑1-1和它下面的继续新增。

双击菜单,可以自动添加菜单点击事件,右键属性中可以更改Name名称。我们来给菜单 “编辑1-1”添加事件

这里出现了事件名称含有中文,这个是没有关系的哈,更改的话,是更改属性中的Name即可。

我们来看一下运行结果:

3、ContextMenuStrip菜单

第二种就是ContextMenuStrip,同样也是拖过来就行,这个添加方式和MenuStrip是一样的,不同的是,这个添加完成后,页面是没有显示的,假如你发现刚添加好的菜单不见了,不要着急,在下面可以找到。

下面会有,你点击那个就会显示那个。如果你想将这个菜单用于右键显示的话,你要选中当前Form,右键打开属性,找到ContextMenuStrip属性,选择你要分配的菜单就可以了。

看一下运行效果:

需要补充的是,这个右键菜单也可以放在其它控件中,比如Panel、PictureBox等,只要这个控件有ContextMenuStrip属性就可以。

以上是关于c#的menustrip绑定contextmenustrip的主要内容,如果未能解决你的问题,请参考以下文章

C# WinForm界面设计教程第12节——MenuStrip菜单

MVVM 下 ContextMenu的命令绑定

ContextMenu 中 MenuItem 的 ElementName 绑定

C# 中 如何实现menuStrip菜单栏中ToolStripMenuItem不可点击(灰色)

C# menustrip下拉菜单自动收回问题

C# MenuStrip控件如何向上弹出菜单(如图)?如何选中某项时能加一个图标(见图)?