程序开发 > C# > Winform > 正文

C# listview选择行(多行)

亮术网 2020-08-07 本网原创

listview控件既可用于显示菜单,也可用于显示表格。当用于显示表格时,即可以选择单行,也可以选择多行;listview控件提供了相应的属性,只需把相应的属性设置为真即可;既可以在控件属性中设置,也可以用一句代码设置。

不管是选中 listview表格中的单行还是多行,一般都是要取数据进行相应操作,这就需要写程序来实现。

 

一、listview选择行的设置

方法一:

1、选中 listview控件,单击“属性”,如图1所示:

listview控件选择行设置

图1

2、找到 FullRowSelect,单击其右边的下拉框,选择 true 即可。

 

方法二:

用以下代码设置:

listview1.FullRowSelect = true;

 

 

二、listview选择多行的设置

1、方法一:在图1中,找到 MultiSelect,把它的值设置为 true 即可。

2、方法二:用以下代码设置:

listview1.MultiSelect = true;

 

 

三、取得listview选择行的值

1、首先要添加选择 listview 行时触发的事件 SelectedIndexChanged,如图2所示:

listview控件选择行事件SelectedIndexChanged

图2

图2中,添加了事件 lv_SelectedIndexChanged,则在代码中会自动生成如下方法:

private void lv_SelectedIndexChanged(object sender, EventArgs e)
  {

}

 

2、在此方法中写代码,获取 listview选择行的值,代码如下:

private void lv_SelectedIndexChanged(object sender, EventArgs e)
  {
    if (listview1.SelectedItems.Count > 0)
    {
      string colunmName = listview1.Columns[0].Text;//获取第一列的标题名称

    //获取选择行第一列的值
      string colunmVal1 = listview1.SelectedItems[0].SubItems[0].Text;

    //获取选择行第二列的值
      string colunmVal2 = listview1.SelectedItems[0].SubItems[2].Text;

    //获取选择多行时的值
      foreach (ListViewItem lvi in listView1.SelectedItems)
      {
        string colunmVal1 = lvi.SubItems[0].Text);
        string colunmVal2 = lvi.SubItems[1].Text);
      }
    }
  }