我需要通过列文本防止ListView控制器中的重复条目。如果找到重复,我需要获取ListView项以进一步处理。我看到每个人都说
An.Insert...
但是如何指出ListViewItem item = ListView3.FindItemWithText("test");
if (!listView1.Items.ContainsKey(txt))
{
// doesn't exist, add it
}
?我确实通过在Column text
和array
之后添加ID来防止重复。但在这种情况下,我可以找到哪个array value exists
重复。
这是我的代码。
entry
答案 0 :(得分:0)
您可以遍历项目或使用linq查找特定ID并保留结果,而不是循环获取所有ID。这可以在外部函数中完成,或者使用循环替换id
部分或使用类似FirstOrDefault
的内容:
addingItemID = rd.GetString(0);
ListViewItem existing = listView3.Items.Cast<ListViewItem>().FirstOrDefault(li => li.SubItems[0].Text == addingItemID); //(not sure if the cast is needed)
if (existing != null)
{
//item exists, variable existing refers to the item
MessageBox.Show("sdsd");
}
else
{
listView3.Items.Add(lvvi);
}