C# ListView如何在列头和内容绑定不同菜单
2014-01-24 10:52
218 查看
图一:
图二:
图三:
工具栏拖一个ContextMenuStrip控件,设置4项,后2项(打开,删除)隐藏Visible=false
4个菜单项分别命名为aaa,bbb,ccc,ddd
利用MouseDown事件,在鼠标单击列头时是不触发MouseDown事件的,这个正好可以利用
当单击的不是列头的时候,就不触发Opening事件
图二:
图三:
工具栏拖一个ContextMenuStrip控件,设置4项,后2项(打开,删除)隐藏Visible=false
4个菜单项分别命名为aaa,bbb,ccc,ddd
利用MouseDown事件,在鼠标单击列头时是不触发MouseDown事件的,这个正好可以利用
当单击的不是列头的时候,就不触发Opening事件
public partial class Form1 : Form { public Form1() { InitializeComponent(); } bool mark = false; //标记 private void listView1_MouseDown(object sender, MouseEventArgs e) { //ListViewItem item = listView1.GetItemAt(e.X, e.Y); //可以利用这个 当选中某一项时 菜单又不一样 aaa.Visible = false; bbb.Visible = false; ccc.Visible = true; ddd.Visible = true; mark = true; } private void contextMenuStrip1_Opening(object sender, CancelEventArgs e) { if (!mark) { aaa.Visible = true; bbb.Visible = true; ccc.Visible = false; ddd.Visible = false; } mark = false; } }
相关文章推荐
- C# ListView如何在列头和内容绑定不同菜单
- 如何在TabControl中响应右键鼠标(添加一个ContextMenu就可以了),如何让在tab标签处右键菜单和在内容处右键菜单显示不同的菜单?
- 在研究论文中如何整理不同部分的内容
- Repeater 绑定数据如何根据数据列的内容排序
- 在导航栏里,点击节点,触发页面刷新,重新读取数据库,并重新进行控件内容绑定,速度很慢,如何解决
- 如何实现一个IIS服务器绑定两个国际域名(一个IP绑定多个不同域名)
- 1个POST表单里面有两个submit分别提交不同的内容,后天如何区分呢?(jung)
- Android分享中,如何过滤指定的应用,并且对不同的分享方式发送不同的内容?
- GridView使用技巧之:如何在RowCommand里获取模板列里绑定的内容?
- Win7系统如何自定义“开始”菜单内容?DIY“开始”菜单图文教程
- IOS-如何干掉UITextField的长按手势菜单与输入内容限制
- MOSS 2010:Visual Studio 2010开发体验(31)——如何给列表绑定多个内容类型
- Excel2013如何将阶梯分布在不同列的内容靠拢到一列里面
- 单一静态网页如何实现点击左边菜单在右边展现内容
- 使用 bootstrapTable 绘表格的时候,如何给每行绑定不同的data-guid 的扩展字段呢?
- MOSS 2010:Visual Studio 2010开发体验(31)——如何给列表绑定多个内容类型
- python logging模块如何把不同内容定向到不同的输出
- 如何在html中直接给某个按钮置灰(样式、去除绑定事件), querySelector与jquery selector的不同之处
- Android分享中,如何过滤指定的应用,并且对不同的分享方式发送不同的内容?
- 【MFC】绑定数据到菜单项目并获取内容