相关疑难解决方法(0)

收集被修改; 从LIstBox中删除ListItem时,枚举可能不会执行错误

我有两个ListBox,lstAvailableColors和lstSelectedColors.每个列表框之间有两个按钮,添加和删除.当在lstAvailableColors中选择一种或多种颜色并单击"添加"按钮时,我想从lstAvailableColors中删除它们并将它们显示在lstSelectedColors中.此外,如果在lstSelectedColors中选择了颜色并单击了"删除"按钮,我想从lstSelectedColors中删除颜色并将它们添加回lstAvailableColors.当我这样做时,我删除项目时出现以下错误:

收集被修改; 枚举操作可能无法执行.

以下是"添加"按钮和"删除"按钮的代码:

加:

protected void btnAdd_Click(object sender, EventArgs e)
{
    foreach (ListItem item in lstAvailableColors.Items)
    {
        if (item.Selected)
        {
            lstSelectedColors.Items.Add(item);
            lstAvailableColors.Items.Remove(item);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

去掉:

protected void btnRemove_Click(object sender, EventArgs e)
{
    foreach (ListItem item in lstSelectedColors.Items)
    {
        if (item.Selected)
        {
            lstAvailableColors.Items.Add(item);
            lstSelectedColors.Items.Remove(item);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

.net c# ienumerable

8
推荐指数
3
解决办法
2万
查看次数

标签 统计

.net ×1

c# ×1

ienumerable ×1