从嵌套Foreach中的Observable Collection中删除项目

Abd*_*rif 1 c# wpf foreach for-loop

我有这些嵌套的Foreach:

foreach (var item1 in ocChoicesinItem)
        {
            foreach (var item2 in temp.ItemsInInvoiceChoices)
            {
                if (item1.ChoicesId == item2.ChoicesId)
                    ocChoicesinItem.Remove(item1);
            }
        }
Run Code Online (Sandbox Code Playgroud)

从ocChoicesinItem中删除项目时出现问题,给我这个错误:

在此输入图像描述

有没有办法实现这个目标?

提前致谢.

Seb*_*Seb 5

如果要删除集合中的项,则需要添加"ToList"语句:

foreach (var item1 in ocChoicesinItem.ToList())
    {
        foreach (var item2 in temp.ItemsInInvoiceChoices)
        {
            if (item1.ChoicesId == item2.ChoicesId)
                ocChoicesinItem.Remove(item1);
        }
    }
Run Code Online (Sandbox Code Playgroud)