列表框中添加的重复项目很少如何用唯一名称重命名重复项目?修改列表框中的重复项目
例如列表框是有项目
Apple
Orange
mango
Apple
Apple
如何将项目名称重命名内部列表框,使输出应该
Apple
Orange
mango
Apple#1
Apple#2
列表框中添加的重复项目很少如何用唯一名称重命名重复项目?修改列表框中的重复项目
例如列表框是有项目
Apple
Orange
mango
Apple
Apple
如何将项目名称重命名内部列表框,使输出应该
Apple
Orange
mango
Apple#1
Apple#2
//// convert listBox items to string
var listBoxItems = listBox.Items.Cast<String>().ToList();
/// find duplicate Items
var duplicateKeys = listBoxItems.GroupBy(x => x)
.Where(group => group.Count() > 1)
.Select(c => new { value = c.Key, count = c.Count() });
//// generate duplicate item +index number
foreach (var duplicateItem in duplicateKeys)
{
for (int i = 0; i < duplicateItem.count; i++)
{
if (listBoxItems.Contains(duplicateItem.value))
{
listBoxItems.Remove(duplicateItem.value);
}
if (i == 0)
{
listBoxItems.Add(duplicateItem.value);
}
else
{
listBoxItems.Add(duplicateItem.value + i);
}
}
}
'+ index number',是不是'(duplicateItem.value + i)'? – FakeCaleb
是的。错字错误 – esiprogrammer
是否要修改列表框中的现有项目,否则我必须在执行上述代码后再次添加项目?我认为输出结果就像apple1而不是苹果1。 – kumar
你是如何在添加项目到列表第一名?一次一个或全部一起去? – ChrisF
一次性添加所有项目。 – kumar