6

我的应用程序包含ListView我正在处理的文件,并且有 3 列:文件名、长度和状态。在我的 for 循环中,我正在处理一个又一个文件,并希望在这种情况下将状态列从wait更改为开始时的值in process。是否可以更改一列?

lvFiles 是我的 ListView

for (int i = 0; i < lvFiles.Items.Count; i++)
{
    //here i am do things with my file
}

在这里,我将文件添加到我的 ListView 中:

ListViewItem item = new ListViewItem(new string[] { new FileInfo(filePath).Name, duration, "Waiting" });
4

2 回答 2

4

使用SubItems属性ListViewItem

foreach(ListViewItem item in lvFiles.Items)
    item.SubItems[2].Text = "Waiting";
于 2013-01-10T22:40:54.370 回答
2

如果你知道特定的列,你可以尝试这样的事情,例如地址是 colString[2] 你可以做一行

string[] colString = new string{ "Starting", "Paused", "Waiting" };
int colIndex = 0;
foreach (ColumnHeader lstViewCol in lvFiles.Columns)
{
  lstViewCol.Text = colString[colIndex];
  colIndex++;
}

对于单列你说你想要第三列然后你可以这样

lvFiles.Colunns[2] = "waiting"; 
于 2013-01-10T22:30:53.420 回答