嘗試運行此方法時出現錯誤:無法從ListBox中刪除項目
此枚舉器綁定的列表已被修改。枚舉器只能在列表不更改時使用。
foreach (var item in lstPhotos.SelectedItems)
{
lstPhotos.Items.Remove(item);
}
如何刪除所選項目?
嘗試運行此方法時出現錯誤:無法從ListBox中刪除項目
此枚舉器綁定的列表已被修改。枚舉器只能在列表不更改時使用。
foreach (var item in lstPhotos.SelectedItems)
{
lstPhotos.Items.Remove(item);
}
如何刪除所選項目?
while(lstPhotos.SelectedItems.Count != 0)
{
lstPhotos.Items.Remove(lstPhotos.SelectedItems[0]);
}
foreach循環不允許您修改正在枚舉的集合。如果您需要修改集合,請改用for循環。
編輯:
我離開我原來的答覆之上,但在這個編碼可以明顯看到,while循環是因爲selectedItems屬性的動態長度更適合於這個問題。
while(lstPhotos.SelectedItems.Length > 0)
{
lstPhotos.Items.Remove(lstPhotos.SelectedItems[0];
}
我怎樣才能訪問每個單獨的項目呢? – 2010-08-10 02:49:32
正如我所說的,使用for循環 – 2010-08-10 02:51:13
while循環可能也適合。是否有像「SelectedItem」這樣的屬性?你知道,這一切都取決於你正在使用的特定集合/庫。 – 2010-08-10 02:52:40
你可能希望看到http://stackoverflow.com/questions/380451/how-do-i-do-i-loop-through-items-in-a-list-box-然後刪除那個項目 – nawfal 2013-06-05 13:53:21