删除ListBox中的重复项

本文关键字:ListBox 删除 | 更新日期: 2023-09-27 18:27:00

我需要删除WPF列表框中的一些项目,我使用以下代码:

while (ListBox.SelectedItems.Count > 0)
{
  ListBox.Items.Remove(ListBox.SelectedItem);
}

但问题是,我的列表框包含几个相同的项目,例如:

chocolate
milk
orange
milk
banana
apple
milk

如果我在第4个位置选择了第2次出现的牛奶,并试图用给定的代码删除它,它将删除第2个位置的第一次出现的奶(未选择)和第4位置的第2次选择的奶。

我也尝试过:

while (ListBox.SelectedItems.Count > 0)
{
  ListBox.Items.RemoveAt(ListBox.Items.IndexOf(ListBox.SelectedItem));
}

但结果是一样的。

有人能给我一个线索吗?

删除ListBox中的重复项

试试这个

if (ListBox.SelectedItem != null)
{
   ListBox.Items.RemoveAt(ListBox.SelectedIndex);
}