C#中关于ListView控件的一些操作实现

几个关于C#中对ListView控件操作的具体实现方法,主要包括了列表显示、大图显示、项目选中、右键浮动菜单等,下面是实例的运行图:

以下是具体实现:

添加列
// Set to details view.
listView1.View = View.Details;
// Add a column with width 100 and left alignment.

listView1.Columns.Add("001", 100, HorizontalAlignment.Left);
listView1.Columns.Add("002", 100, HorizontalAlignment.Left);
listView1.Columns.Add("003", 100, HorizontalAlignment.Left);

添加条目

for (int i = 0; i < 10; i++)
{
listView1.Items.Add(i.ToString(), 0);
listView1.Items[i].SubItems.Add("00000000");
listView1.Items[i].SubItems.Add("11111111");
}

显示大图标列表(小图标和这个差不多)
首先拽一个imagelist控件到Form中来,然后为这个控件添加图片,这些都不需要编程,点点鼠标就可以了。

listView1.View = View.LargeIcon;
listView1.LargeImageList = imageList1;

for (int i = 0; i < 10; i++)
{
listView1.Items[i].ImageIndex = 0;
}

为ListView设置鼠标右键选中事件。经常需要在右键选中某项时弹出浮动菜单用到。
首先为ListView控件添加MouseClick的Event,然后下面代码:
private void listView1_MouseClick(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Right)
{
String str = listView1.SelectedItems[0].text;
MessageBox.Show(str);
}
}
代码显示了鼠标右键当前选中的项。很多人问怎么获得ListView中选择项的内容,上面就是方法。


禁止ListView中进行多项选中(禁用多选)
listView1.MultiSelect = false;


给ListView在鼠标右键选中的情况下添加浮动菜单:
首先在Form中拽一个contextMenuStrip控件,编辑控件的菜单项目,然后:

private void listView1_MouseClick(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Right)
{

String str = listView1.SelectedItems[0].Text;
Point p = new Point (e.X,e.Y );
contextMenuStrip1.Show(listView1, p);
}
}

C#中关于ListView控件的一些操作实现