C#一个contextMenuStrip控件在多个控件上使用的方法
在不同控件上显示不同菜单选项,并且希望点击contextMenuStrip菜单时在不同控件上显示的功能不同...
在不同控件上显示不同菜单选项,并且希望点击contextMenuStrip菜单时在不同控件上显示的功能不同
展开
1个回答
展开全部
这个需要动态生成,给你个思路:
每次需要用的时候创建
contextMenuStrip cms=new contextMenuStrip();添加一个右键菜单
cms.toolitemsstrip.add()-添加一个菜单选项
菜单选项.cilik+=function()--为菜单绑定单击事件方法
最后将cms对象和你的控件绑定 控件名.contextmenustrip=cms
具体的单词记不住,不好意思
每次需要用的时候创建
contextMenuStrip cms=new contextMenuStrip();添加一个右键菜单
cms.toolitemsstrip.add()-添加一个菜单选项
菜单选项.cilik+=function()--为菜单绑定单击事件方法
最后将cms对象和你的控件绑定 控件名.contextmenustrip=cms
具体的单词记不住,不好意思
追问
还是不太理解,大神如果有时间的话做个具体实例那就更加感谢了
追答
好的,我给你个例子吧!
比如在你的目标窗体中有一个DataGridView控件 名字叫dgv
首先我门先自己写一个事件方法
private void tsmi_Clickevent(object sender, EventArgs e)
{
MessageBox.Show("你点击我了");
}
然后在你的窗体加载事件里面我们生成一个简单的右键菜单
private void Form1_Load(object sender, EventArgs e)
{
ContextMenuStrip cms = new ContextMenuStrip();//创建菜单对象
ToolStripMenuItem tsmi = new ToolStripMenuItem("我的动态右键菜单");
tsmi.Click += tsmi_Clickevent;//指定单击事件要执行额方法
cms.Items.Add(tsmi);//将子菜单与主菜单绑定
this.dgv.ContextMenuStrip = cms;//将主菜单与控件绑定
以上我们在不需拖放右键菜单控件的情况下就动态创建了一个简单的右键菜单
这样就完成了
需要不同的功能的时候你重新 创建就可以了
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询