using System; using System.Collections.Generic; using System.Text; using System.Windows.Forms;// using System.Collections; // namespace MBrowser { class ControlViewList { /// <summary> /// 添加两个项到ListView /// </summary> /// <param name="item1">项1</param> /// <param name="item2">项2</param> /// <param name="imageIndex">imageIndex索引</param> /// <param name="listView1">控制的ListView</param> public static void AddListItem(string item1,string item2,int imageIndex,ListView listView1) { //ListView控件中项的建立 ListViewItem lvItem; //ListViewItem 成员,初学者可以暂时把该项理解为在Details模式中的一整行信息 ListViewItem.ListViewSubItem lvSubItem; //表示 ListViewItem 的子项,也就是ListViewItem一行中的一列信息。 lvItem = new ListViewItem(); lvItem.Text = item1; //lvItem.Tag = "与该项相关联的信息的对象"; //Tag可以付任何对象的值,比如字符串,数值型...我经常用该项保存调用数据库时不用显示的编号信息。 lvItem.ImageIndex = imageIndex; //如果你添加了imageslist控件并设置了关联,在此可以选择需要显示的图标。 lvSubItem = new System.Windows.Forms.ListViewItem.ListViewSubItem(); lvSubItem.Text = item2; //声明及设置Item的子项。 lvItem.SubItems.Add(lvSubItem); //将子项添加到Item中。 //如果需要添加第2,3.....个子项需要重复上面的代码,声明一个添加一个。 listView1.BeginUpdate(); //添加Item项代码 listView1.Items.Add(lvItem); listView1.EndUpdate(); } /// <summary> /// 获取选中行记录的第一个子项Text /// </summary> /// <param name="listView1">控制的ListView</param> /// <returns>第一个子项Text</returns> public static List<string> GetItemValue(ListView listView1) { List<string> list = new List<string>(); if (listView1.SelectedItems != null) //判断ListView控件是否有项目选中 { //this.label5.Text = this.listView1.SelectedItems[0].Tag.ToString(); //读取Item中的Tag信息。 for (int i = 0; i < listView1.SelectedItems.Count; i++) { string str = listView1.SelectedItems[i].SubItems[1].Text; //读取Item子项信息。 list.Add(str); } } return list; } /// <summary> /// 获取选中的第一行,第一个子项Text /// </summary> /// <param name="listView1">控制的ListView</param> /// <returns>第一行,第一个子项</returns> public static string getFirstItemValue(ListView listView1) { string str = listView1.SelectedItems[0].SubItems[1].Text; //读取Item子项信息。 return str; } /// <summary> /// 获取所有行的第一个子项Text /// </summary> /// <param name="listView1">控制的ListView</param> /// <returns>第一个子项Text</returns> public static List<string> allItemValue(ListView listView1) { List<string> list = new List<string>(); if (listView1.SelectedItems != null) //判断ListView控件是否有项目选中 { for (int i = 0; i < listView1.Items.Count; i++) { string str = listView1.Items[i].SubItems[1].Text; //读取Item子项信息。 list.Add(str); } } return list; } /// <summary> /// 全选或反选listView的所有列 /// </summary> /// <param name="isSelected">如果全选为true,全不选为false</param> /// <param name="listView1">控制的ListView</param> public static void selectAllItems(bool isSelected, ListView listView1) { for (int i = 0; i < listView1.Items.Count; i++) { listView1.Items[i].Selected = isSelected; listView1.Items[i].Focused = isSelected; } } /// <summary> /// 删除选中行 /// </summary> /// <param name="listView1">控制的ListView</param> public static void deleteItemSelect(ListView listView1) { if (listView1.SelectedItems != null) //判断ListView控件是否有项目选中 { while (listView1.SelectedItems.Count > 0) { listView1.SelectedItems[0].Remove(); } } } } }