当前位置:网站首页>C#为listview选中的项添加右键菜单
C#为listview选中的项添加右键菜单
2022-08-02 11:04:00 【幕尘枫】
效果图:
实现步骤:
1、把ContextMenuStrip菜单控件拖放到设计界面上,Name属性设置为cmsListViewItem
2、在ContextMenuStrip控件的Items集合里添加想要的菜单
3、ListView控件添加MouseClick事件,代码如下:
private void listViewZone_MouseClick(object sender, MouseEventArgs e)
{
ListView listView = (ListView)sender;
ListViewItem item = listView.GetItemAt(e.X, e.Y);
if (item != null && e.Button == MouseButtons.Right)
{
//cmsListViewItem是我们添加的菜单控件
this.cmsListViewItem.Show(listView, e.X, e.Y);
}
}
4、Listview控件的常规属性设置:
- FullRowSelect属性设置为true,这样item项选中会有背景色;
- GridLines属性设置为true,这样会显示表格线,比较美观;
5、ContextMenuStrip控件的子菜单添加点击事件,比如我选中ListView的一个项后,右键点击“修改”菜单按钮,代码如下:
private void tsmiListViewItemEdit_Click(object sender, EventArgs e)
{
ListView.SelectedIndexCollection indexes = this.listViewZone.SelectedIndices;
if (indexes.Count > 0){
int index = indexes[0];
//获取第一列的值
int id = Convert.ToInt32(this.listViewZone.Items[index].SubItems[0].Text);
//获取第二列的值
string name = this.listViewZone.Items[index].SubItems[1].Text;
}
}
边栏推荐
猜你喜欢
随机推荐
保姆级教程:写出自己的移动应用和小程序(篇二)
LayaBox---TypeScript---模块
Nanny Level Tutorial: Write Your Own Mobile Apps and Mini Programs (Part 2)
MP的几种查询方式
Com多进程通信实现
Outsourced Student Management System Architecture Documentation
leetcode: 200. Number of islands
Several reasons why applet plugins benefit developers
字节跳动软件测试岗,收到offer后我却拒绝了~给面试的人一些忠告....
Oracle查询提示 ORA-00933 SQL command not properly ended 原因排查
ASP.NET Core 6框架揭秘实例演示[31]:路由"高阶"用法
太帅了!我用炫酷大屏展示爬虫数据!
Shell编程之条件语句
SQLAlchemy使用教程
Oracle 单实例19.11升级到19.12
Geoffery Hinton:深度学习的下一个大事件
LayaBox---TypeScript---Iterator and generator
Shell编程案例
Oracle 19c配置ob server
leetcode: 200. 岛屿数量