w i n f o r m 操作 L i s t V i e w 控件 winform操作ListView控件 winform操作ListView控件
添加一行
// ListViewItem( 数据内容,图片索引 )
listView1.Items.Add(new ListViewItem(new string[] { "tetrse", "rerwerrr", "sddddd","dsda" },0));
listView1.Items.Add(new ListViewItem(new string[] {textBox1.Text , textBox1.Text, textBox1.Text, textBox1.Text },0));
触发选中事件
private void listV_train_SelectedIndexChanged(object sender, EventArgs e)
{
if (listV_train.SelectedItems.Count == 0)
return;
else
{
//选中点击那一行的第一列的值,索引值必须是0,而且无论点这一行的第几列,选中的都是这一行第一列的值 ,如果想获取这一行除第一列外的值,则用subitems获取,[]中为索引,从1开始。
string first = listV_train.SelectedItems[0].Text;
MessageBox.Show(first);
string second = listView1.SelectedItems[0].SubItems[1].Text;
}
}
删除
listView1.Items.RemoveAt(0);
listView1.Items.Remove();
int selectedIndex = listView1.SelectedItems[0].Index;
实例
ListViewItem item1 = new ListViewItem("1");
item1.ImageIndex = 0;
item1.SubItems.Add("x1");
item1.SubItems.Add("x2");
item1.SubItems.Add("x3");
item1.SubItems.Add("x4");
this.listView1.Items.Add(item1);
ListViewItem item2 = new ListViewItem("2");
item2.ImageIndex = 1;
item2.SubItems.Add("y1");
item2.SubItems.Add("y2");
item2.SubItems.Add("y3");
item2.SubItems.Add("y4");
this.listView1.Items.Add(item2);
实例1:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace TestUI
{
public partial class AlgoTrainUI : MetroFramework.Forms.MetroForm
{
public AlgoTrainUI()
{
InitializeComponent();
}
private void toolStripButton1_Click(object sender, EventArgs e)
{
List<string> allfiles = Utils.GetAllFilePaths(@"D:\workplace\cpp\TestUITTTT\TestUI\TestUI\bin\x64\Debug\dataset\78b7e225-bb09-4269-9c8f-e6081ce576f4\images\train");
int count = 0;
foreach (string file in allfiles)
{
listV_train.Items.Add(new ListViewItem(new string[] { count.ToString(), Path.GetFileName(file) ,file}));
count++;
}
}
private void listV_train_SelectedIndexChanged(object sender, EventArgs e)
{
if (listV_train.SelectedItems.Count == 0)
return;
else
{
//选中点击那一行的第一列的值,索引值必须是0,而且无论点这一行的第几列,选中的都是这一行第一列的值 ,如果想获取这一行除第一列外的值,则用subitems获取,[]中为索引,从1开始。
string first = listV_train.SelectedItems[0].Text;
// MessageBox.Show(first);
string path = listV_train.SelectedItems[0].SubItems[2].Text;
pictureBox1.Image = Image.FromFile(path);
}
}
}
}