Закройте все открытые формы, кроме главного меню в C #

Попытка закрыть все формы, кроме главного меню, используя

FormCollection formsList = Application.OpenForms;

с циклом foreach и говоря,

if (thisForm.Name != "Menu") thisForm.Close();

Что работает нормально, оно пропускает меню и закрывает первое, но потом выдает ошибки:

Коллекция была изменена; операция перечисления может не выполняться

и останавливается. Я пробовал несколько мест, и все они говорят, что этот цикл foreach - способ сделать это, и это особенно раздражает, так как я не обновляю свой список форм после закрытия форм, что, как я думал, может сработать. Единственное, о чем я мог подумать, - это начать сзади и работать некоторое время вперед.

Ответы на вопрос(8)

Ваш ответ на вопрос