无法从列表框中删除项目

时间:2010-06-03 15:32:16

标签: c#

我正在尝试从列表框中删除某个项目,但无效。即使我确信存在要删除的项目。关于可能出错的任何想法?

iSelectedItem = ContactConflictListBox.ItemIndex;


if ((iSelectedItem == -1))
{
    return;
}

ContactConflictListBox.Items.Remove(iSelectedItem);

3 个答案:

答案 0 :(得分:4)

您正在获取索引,而非项目。要按索引删除,请使用ContactConflictListBox.Items.Remove(ContactConflictListBox.Items[iSelectedItem]);ContactConflictListBox.Items.RemoveAt(iSelectedItem);。请注意,RemoveAt方法不应该在代码中使用,它只是出于基础结构的原因。

答案 1 :(得分:3)

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

答案 2 :(得分:1)

ListBox.ObjectCollection.Remove将要删除的对象作为参数。您必须致电ListBox.ObjectCollection.RemoveAt(不幸的是,记录为仅基础设施),或将对象传递给ListBox.ObjectCollection.Remove

ContactConflictListBox.Items.Remove(ContactConflictListBox.Items[iSelectedItem]);

(或者,如果索引不相关:)

ContactConflictListBox.Items.Remove(ContactConflictListBox.SelectedItem);