首页 > 代码库 > ListView控件使用

ListView控件使用

   //ListView标头的代码创建方法。
   ColumnHeader title=new ColumnHeader(); //声明标头,并创建对象。
   title.Text="标头1名称"; //标头一显示的名称。
   title.Width=120; //标头一名称 的宽度。
   this.listView1.Columns.Add(title); //将标头添加到ListView控件。
   title=new ColumnHeader(); //注意,如果创建新标头必须 使用New创建新对象。
   title.Text="标头2名称";
   this.listView1.Columns.Add(title); //标头2我只设置名称,未设置宽度,这是允许的。
 
   //ListView控件中项的建立
   ListViewItem lvItem; //ListViewItem 成员,初学者可以暂时把该项理解为在Details模式中的一整行信息
   ListViewItem.ListViewSubItem lvSubItem; //表示 ListViewItem 的子项,也就是ListViewItem一行中的一列信息。
   lvItem=new ListViewItem();
   lvItem.Text="第一列信息";
   lvItem.Tag="与该项相关联的信息的对象"; //Tag可以付任何对象的值,比如字符串,数值型...我经常用该项保存调用数据库时不用显示的编号信息。
   lvItem.ImageIndex=0; //如果你添加了imageslist控件并设置了关联,在此可以选择需要显示的图标。
   lvSubItem=new System.Windows.Forms.ListViewItem.ListViewSubItem();
   lvSubItem.Text="第二列信息"; //声明及设置Item的子项。
   
   lvItem.SubItems.Add(lvSubItem); //将子项添加到Item中。
   //如果需要添加第2,3.....个子项需要重复上面的代码,声明一个添加一个。如:
   //lvSubItem=new System.Windows.Forms.ListViewItem.ListViewSubItem();
   //lvSubItem.Text="第三列信息";
   //lvItem.SubItems.Add(lvSubItem);
   //一点建议:在添加ListView中项的时候如果项较多可以使用
   
   //this.listView1.BeginUpdate();
   //......(添加Item项代码).
   //this.listView1.EndUpdate();
   
   //以便添加完项目后一次更新ListView控件。
 
   //下面介绍ListView控件读取当前选择行的代码
   private void listView1_Click(object sender, System.EventArgs e)  //ListView控件点击事件
   {
    if(this.listView1.SelectedItems!=null)  //判断ListView控件是否有项目选中
    {
     this.label5.Text=this.listView1.SelectedItems[0].Tag.ToString(); //读取Item中的Tag信息。
     this.textBox1.Text=this.listView1.SelectedItems[0].SubItems[1].Text ; //读取Item子项信息。
     this.textBox2.Text=this.listView1.SelectedItems[0].SubItems[2].Text;
     this.textBox3.Text=this.listView1.SelectedItems[0].SubItems[3].Text;
    }
   }
  //在这里对SelectedItems属性介绍一下,该属性代表ListView选中的行,
  //[0]就是选中的第一个,因为ListView控件允许一次选中多个行,
  //所以[0]代表第一个选中,[1]代表二个选中,依次类推。
  //SelectedItems.Count属性可返回目前选中行的数目。
  //SelectedItems[0].SubItems[1]中SubItems代表的就是Item的子项,也就是上面代码
  //lvSubItem=new System.Windows.Forms.ListViewItem.ListViewSubItem();
  //lvSubItem.Text="第二列信息";
  //创建的内容。
 
  //最后介绍一个常用的就是当前选择项的删除。
  if(this.listView1.SelectedItems!=null)
  {
   this.listView1.SelectedItems[0].Remove();
  }
  //提示:在读取和删除中如果需要多重选择的项进行处理可以使用For循环,如for(int i=0;i<SelectedItems.Count;i++)。