foreach listbox.items.remove与listview.items.remove的区别

gmaxajtg 2006-10-09 12:00:59
foreach(listitem litm in listbox1.selectItems)
{
listbox1.items.remote(litm);
}
可以移除一个,当移除第二个时,出错.说什么不能修改玫举值....

foreach(ListViewItem lstvw in listview.selectitems)
{
listview.items.remote(lstvw);
}
可以全部移除.不出错.
代码非常相仿,不知道为何移除listbox.item就出问题.而移除listview.itmes就没有问题?
请各位指点指点.谢谢.

...全文
431 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
gmaxajtg 2006-10-09
  • 打赏
  • 举报
回复
自己顶顶
gmaxajtg 2006-10-09
  • 打赏
  • 举报
回复
谢谢各位。谢谢冰点
移除是没有问题了,但是我想知道的是为什么
foreach ()
{
listbox.items.remove()失败,而
  listview.items.remove()可以正常运行呢?
}
蓝色_冰点 2006-10-09
  • 打赏
  • 举报
回复
建议使用另一方法,如:
while(listBox1.SelectedItems.Count>0)
{
listBox1.Items.Remove(listBox1.SelectedItems[0]);
}
蓝色_冰点 2006-10-09
  • 打赏
  • 举报
回复
好象是这样的,使用foreach()的前提条件是不能对所in的集合进行修改。而ListView仅是一个视图,对视图里的项删除并不影响实际值,所以成功。答案仅供参考
viena 2006-10-09
  • 打赏
  • 举报
回复
用items.Clear()方法可以全部移除
gmaxajtg 2006-10-09
  • 打赏
  • 举报
回复
哦哦。
没有人回答哦

17,748

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 .NET Framework
社区管理员
  • .NET Framework社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧