using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Windows.Forms;namespace Common{ ////// 列表视图操作类 /// public class CtlListViewOperate { private ListView m_listView = null; ////// 关联列表视图控件 /// public ListView refListViewControl { set { m_listView = value; } get { return m_listView; } } ////// 构造函数 /// /// 树视图控件 public CtlListViewOperate() { } //public CtlListViewOperate(ListView listView) //{ // m_listView = listView; //} private static volatile CtlListViewOperate m_dgvOpera = null; ////// 获取列表视图操作类单一实例 /// ///public static CtlListViewOperate GetInstance() { if(null == m_dgvOpera) { m_dgvOpera = new CtlListViewOperate(); } return m_dgvOpera; } /// /// 删除选中的项 /// public void DeleteItems() { if (MessageBox.Show("确定要删除选中的项吗?", "", MessageBoxButtons.OKCancel) == DialogResult.OK) { int num = m_listView.CheckedItems.Count; for (int i = num - 1; i >= 0; i--) //从大到小序列依次删除 否则 删除 报错 因为 视图项是动态的 { m_listView.Items.Remove(m_listView.CheckedItems[i]); } } } ////// 添加新项 /// /// 名 /// 值 public void AddItem(string name, string value) { int num = m_listView.Items.Count; for (int i = 0; i < num; i++ ) { if ((m_listView.Items[i].Tag).ToString() == value) { MessageBox.Show("该项已经存在!"); return; } } ListViewItem lvi = new ListViewItem(); lvi.Text = name; lvi.Tag = value; m_listView.Items.Add(lvi); } ////// 添加新项 /// /// 视图子项 public void AddItem(ListViewItem lvi) { m_listView.Items.Add(lvi); } }}