C# ListView控件

创建一个 Windows 应用程序,将 ListView 控件的 View 属性设置为 SmallIcon ,然后使用 Groups 集合的 Add 方法创建两个分组,标题分别为 " 名称 " " 类别 " ,排列方式为左对齐,最后向 ListView 控件中添加 6 项,然后设置每项的 Group 属性,将控件中的项进行分组;最后通过 3 Button 控件,分别实现向 ListView 控件添加、移除和清空项的功能。如下图所示:

private void Form1_Load(object sender, EventArgs e)

{

//设置listView1控件的View属性,设置样式

listView1.View = View.SmallIcon;

//为listView1建立两个组

listView1.Groups.Add(new ListViewGroup("名称", HorizontalAlignment.Left));

listView1.Groups.Add(new ListViewGroup("类别", HorizontalAlignment.Left));

//向控件中添加项目

listView1.Items.Add("明日科技");

listView1.Items.Add("C#编程词典");

listView1.Items.Add("视频学C#编程");

listView1.Items.Add("公司");

listView1.Items.Add("软件");

listView1.Items.Add("图书");

//将listView1控件中索引是0、1和2的项添加到第一个分组

listView1.Items0.Group = listView1.Groups0;

listView1.Items1.Group = listView1.Groups0;

listView1.Items2.Group = listView1.Groups0;

//将listView1控件中索引是3、4和5的项添加到第二个分组

listView1.Items3.Group = listView1.Groups1;

listView1.Items4.Group = listView1.Groups1;

listView1.Items5.Group = listView1.Groups1;

}

private void button1_Click(object sender, EventArgs e)

{

if (textBox1.Text == "")//判断文本框中是否输入数据

{

MessageBox.Show("项目不能为空");//如果没有输入数据则弹出提示

}

else

{

listView1.Items.Add(textBox1.Text.Trim());//使用Add方法向控件中添加数据

}

}

private void button2_Click(object sender, EventArgs e)

{

if (listView1.SelectedItems.Count == 0)//判断是否选择了要删除的项

{

MessageBox.Show("请选择要删除的项");//如果没有选择弹出提示

}

else

{

//使用RemoveAt方法移除选择的项目

listView1.Items.RemoveAt(listView1.SelectedItems0.Index);

listView1.SelectedItems.Clear();//取消控件的选择

}

}

private void button3_Click(object sender, EventArgs e)

{

if (listView1.Items.Count == 0)//判断控件中是否存在项目

{

MessageBox.Show("项目中已经没有项目");//如果没有项目弹出提示

}

else

{

listView1.Items.Clear();//使用Clear方法移除所有项目

}

}

ListView是一种列表控件,在实现诸如显示文件详细信息这样的功能时,推荐使用该控件;另外,由于ListView有多种显示样式,因此在实现类似Windows系统的"缩略图"、"平铺"、"图标"、"列表"和"详细信息"等功能时,经常需要使用ListView控件。

相关推荐
AAIshangyanxiu25 分钟前
涡度通量碳观测数据 MATLAB 全流程解析与敏感性定量分析、观测数据质控、插补及 footprint 建模技术
开发语言·matlab·涡度通量·生态碳汇·生态碳汇模拟
小短腿乄31 分钟前
java实现pdf加水印+签名
java·开发语言·pdf
聆风吟º1 小时前
【金仓数据库征文】Java 应用接入金仓数据库:从驱动、连接池到存储过程调试的踩坑实录
java·开发语言·数据库
LccKyI1 小时前
C#学习day04
经验分享·笔记·学习·c#
不会代码的小猴1 小时前
11. 类和动态内存分配
开发语言·c++
似璟如你2 小时前
Java 开发者的 Go 语法基础:从 0 开始快速上手 Go
java·开发语言·后端·golang·go·编程语言
LccKyI2 小时前
C#学习day05(开发福彩双色球系统附思维导图)
开发语言·学习·c#
zzz_23682 小时前
TencentDB-Agent-Memory 深度解析:让多个 Agent 共享项目经验的记忆中枢
java·开发语言·jvm·人工智能·agent·memory·tencent db
charlie1145141913 小时前
IMX6ULL WM8960 的移植——前置介绍
开发语言·c++·开源项目·嵌入式linux
迷迭香yy3 小时前
Python实战:涨停板“假封板”识别系统的工程实现
开发语言·人工智能·python