ListView 类在 C# 中对数据列表显示。其中的显示项用ListViewItem 类表示。
ListView中的项显示方式包括5种 通过类 属性View 来设设置:
ListView1.View = View.Details; ListView1.View = View.SmallIcon; ListView1.View = View.LargeIcon; ListView1.View = View.Tile; ListView1.View = View.List;
其中 详细信息视图是最丰富的选项,它不但允许您查看项,还允许您查看为各项指定的任何子项。各项在网格中显示,它们垂直排列且其子项会显示在列中(带有列标题)。详细信息视图是向用户显示数据库信息的理想方式------(MSDN)
ListViewItem 类用来表示列表中的项,列表中的项可以子项,子项包含与父项相关的信息。详细信息视图(View.Details)允许您在网格中显示项及其子项,并通过列标头(ColumnHeader)标识要在子项中显示的信息.
在C# WinForm 程序中使用ListView 来显示人员信息:初始化ListView 代码:
private void InitListView()
{
lvwInfo.View = View.Details;
lvwInfo.FullRowSelect = true;
lvwInfo.Columns.Add("姓名", 100, HorizontalAlignment.Left);
lvwInfo.Columns.Add("性别", 100, HorizontalAlignment.Left);
lvwInfo.Columns.Add("年龄", 100, HorizontalAlignment.Left);
lvwInfo.Columns.Add("年级", 100, HorizontalAlignment.Left);
lvwInfo.Columns.Add("成绩", 100, HorizontalAlignment.Left);
//可用用下面的代码添加列标头
//ColumnHeader ch = new ColumnHeader();
//ch.Width = 100;
//ch.Text = "姓名";
//lvwInfo.Columns.Add(ch);
}
得到:
下面填充数据:
private void loadLvwData() { ListViewItem item = new ListViewItem("张三"); item.SubItems.Add("男"); item.SubItems.Add("20"); lvwInfo.Items.AddRange(new ListViewItem[] { item }); string[] row1 = { "男", "20", "32" }; lvwInfo.Items.Add("李四").SubItems.AddRange(row1); ListViewItem item1 = new ListViewItem("王五"); item1.SubItems.Add("男"); item1.SubItems.Add("30"); lvwInfo.Items.Add(item1); ListViewItem item2 = new ListViewItem("小六"); item2.SubItems.Add("男"); item2.SubItems.Add("20"); ListViewItem item3 = new ListViewItem("小儿"); item3.SubItems.Add("男"); item3.SubItems.Add("50"); ListViewItem item4 = new ListViewItem("老酒"); item4.SubItems.Add("男"); item4.SubItems.Add("30"); lvwInfo.Items.AddRange(new ListViewItem[] { item2, item3, item4 }); ListViewItem items = new ListViewItem(new []{"特二","男","屌丝","4"}); lvwInfo.Items.Add(items); }
用了几种方式添加, 显示如下: