在我的ListView中标记最后一个项目
本文关键字:最后一个 项目 我的 ListView | 更新日期: 2023-09-27 17:50:12
我构建应用程序并向ListView添加文件,我希望每次添加的最后一个文件都要强调所以在Foreach语句中我添加了lvFiles.Items[lvFiles.Items.Count - 1].Selected = true;
但在这种情况下,ListView中的所有文件都要强调而不仅仅是最后一个
List<string> filesList
foreach (string fileName in filesList)
{
FileInfo fileInfo = new FileInfo(fileName);
if (checkFileCreationDate(fileInfo))
{
if (editcap.isWiresharkFormat(fileInfo.FullName))
{
if (editcap.isLibpcapFormat(fileInfo.FullName))
{
addFileToListBox(fileInfo.FullName, capinfos.getFileDuration(fileInfo.FullName));
}
else if (!editcap.isLibpcapFormat(fileInfo.FullName))
{
fileToAdd = editcap.getNewFileName(fileInfo.FullName);
if (new FileInfo(fileToAdd).Exists && !fileInfo.Exists)
{
addFileToListBox(fileToAdd, capinfos.getFileDuration(fileInfo.FullName));
}
}
}
}
}
private void addFileToListBox(string filePath, string duration)
{
item = new ListViewItem(new string[] { new FileInfo(filePath).Name, duration, "Waiting" });
item.Tag = new FileInfo(filePath).FullName;
}
只要把语句放在foreach后面就可以了。
:
foreach(var x in colY)
{
//check file
lvFiles.Items[lvFiles.Items.Count - 1].Selected = false;
//add item here
lvFiles.Items[lvFiles.Items.Count - 1].Selected = true;
}
您需要先取消选择前面的元素,然后再选择最后一个元素:
foreach (var item in lvFiles.Items)
{
item.Selected = false;
}
lvFiles.Items[lvFiles.Items.Count - 1].Selected = true;