ListView 列表视图控件

ListView 列表视图控件

ListView 可以用五种视图中的一种来呈现列表集合,还支持关联 ImageList 显示图标。

点击控件右上角小三角可以设置 LargeImageList、SmallImageList 等。

五种视图

视图说明
LargeIcon大图标模式(默认)
SmallIcon小图标模式
List列表模式
Details详细信息模式(带列头)
Tile平铺模式
this.listView1.View = View.Details;Code language: JavaScript (javascript)

设置图标

在编辑项(Items)中可以设置 ImageIndex,关联 ImageList 中对应索引的图标。

this.listView1.LargeImageList = this.imageList1;
this.listView1.SmallImageList = this.imageList1;

ListViewItem item = new ListViewItem("项目1", 0); // 0 对应 imageList1.Images[0]
this.listView1.Items.Add(item);Code language: JavaScript (javascript)

也可以同时显示图片和文字,通过设置 ImagePosition 控制图片和文字的相对位置。

Details 视图下添加列

this.listView1.View = View.Details;
this.listView1.Columns.Add("编号", 80);
this.listView1.Columns.Add("姓名", 100);
this.listView1.Columns.Add("成绩", 80);

ListViewItem item = new ListViewItem("1");
item.SubItems.Add("张三");
item.SubItems.Add("98");
this.listView1.Items.Add(item);Code language: JavaScript (javascript)

获取选中项

private void listView1_Click(object sender, EventArgs e)
{
    ListView listView = sender as ListView;
    int selectCount = listView.SelectedItems.Count;
    if (selectCount == 0)
    {
        return; // 没选中,不做响应
    }
    else
    {
        MessageBox.Show(listView.SelectedItems[0].Text);
    }
}Code language: JavaScript (javascript)

常用属性

属性说明
View视图模式
Items项集合
Columns列集合(Details 视图下使用)
LargeImageList大图标模式关联的 ImageList
SmallImageList小图标模式关联的 ImageList
StateImageList状态图标(如勾选框)
SelectedItems所有选中项的集合
CheckBoxes是否显示勾选框
FullRowSelect是否整行选中
GridLines是否显示网格线(Details 视图)
MultiSelect是否允许多选
HeaderStyle列头样式

常用事件

事件说明
Click单击触发
DoubleClick双击触发
SelectedIndexChanged选中项改变时触发
ItemActivate项被激活时触发(双击或回车)
ColumnClick列头被点击时触发

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注