循环删除的时候出现了标题上的提示,找到了这个解决办法
foreach (object var in collection_to_loop)
{
//删除collection_to_loop中元素
}
for (int i = 0; i < obj.length; i++)
{
//删除obj中元素
}
以上两种遍历方式 在删除遍历对象中元素时是不可以的。
正确的方法是:
for (int i = obj.length; i > 0; i++)
{
//删除操作
}
这类问题非常常见,不光是C#,其他语言也是
以上所讲的却是应该注意,不过刚才做了个测试,只要在删除是不对集合更新(我出毛病的是DataGrid,因为我删除一条后就更新一次,重新绑定)就可以了。