C#列表框删除项目

C#列表框删除项目,c#,listbox,C#,Listbox,您好,我读了无数关于删除ListBox项的帖子,我尝试了许多不同的方法,但我仍然不断遇到这个bug 当我尝试删除一个项目时,列表框中有另一个项目具有完全相同的名称,它会删除另一个项目。 解释一下 我用于从列表框中删除项的代码如下: if (listBox1.SelectedItem != null) { listBox1.Items.Remove(listBox1.SelectedItem); utils.updateScript(script, listBox1);

您好,我读了无数关于删除
ListBox
项的帖子,我尝试了许多不同的方法,但我仍然不断遇到这个bug

当我尝试删除一个项目时,列表框中有另一个项目具有完全相同的名称,它会删除另一个项目。 解释一下

我用于从列表框中删除项的代码如下:

if (listBox1.SelectedItem != null) {
    listBox1.Items.Remove(listBox1.SelectedItem);
    utils.updateScript(script, listBox1);

    listBox1.SelectedItem = null;
}
else {
    MessageBox.Show("Please select a script command to delete");
}
解决方案:

listBox1.Items.RemoveAt(listBox1.SelectedIndex);

这似乎起作用了

嗯。。有趣的。。。有RemoveAt方法吗?也许这会有帮助。然后可以按索引删除。您的列表框项目是什么?如果它们是字符串,那么它会删除第一个,因为它们相等。请告诉我们您是如何填充列表框的。谢谢,这看起来很有效。listBox1.Items.RemoveAt(listBox1.SelectedIndex);美好的以后别忘了把你的问题标为“答案”;-)