C#删除listBox1多项

来源:百度知道 编辑:UC知道 时间:2024/06/07 09:48:39
我把listBox1的SlectionMode属性设置为MultiExtended。
private void button1_Click(object sender, EventArgs e)
{
//如何删除任意选中的项。(考虑一个都没选中情况)
}
一楼的,选中3项只删除了2项...

一楼,二楼的用for语句没错,但是不能从前往后删,这样会出现异常的。应该从后往前删。
for (int i = lbx.SelectedItems.Count - 1; i >=0 ; i--)
{
lbx.Items.Remove(lbx.SelectedItems[i]);
}

for (int i = 0; i < lbx.SelectedItems.Count; i++)
{
lbx.Items.RemoveAt(lbx.Items.IndexOf(lbx.SelectedItems[i]));
}

if (listBox1.SelectedItems.Count > 0)
{
int count=listBox1.SelectedItems.Count;
IList<object> list=new List<object>();

for (int i = 0; i < listBox1.SelectedItems.Count ; i++)
{
list.Add(listBox1.SelectedItems[i]);
}
for (int i = 0; i < list.Count; i++)
{
listBox1.Items.Remove(list[i]);
}

}