2

我需要删除 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));
}

但结果是一样的。

有人可以给我一个线索吗?

4

1 回答 1

3

尝试这个

if (ListBox.SelectedItem != null)
{
   ListBox.Items.RemoveAt(ListBox.SelectedIndex);
}
于 2013-08-09T20:16:31.817 回答