Tratando de cerrar todas las formas excepto para el menú principal usandoformas Cierre todos excepto el menú principal en C#
FormCollection formsList = Application.OpenForms;
con un bucle foreach y diciendo,
if (thisForm.Name != "Menu") thisForm.Close();
que funciona bien, se omite el menú y cierra el primero, pero luego los errores:
Se modificó la colección; la operación de enumeración no puede ejecutar
y se detiene. He intentado algunos lugares, y todos dicen que este ciclo foreach es la manera de hacerlo, y es especialmente molesto ya que no estoy actualizando mi lista de formularios después de cerrar los formularios, lo que pensé que podría funcionar. Lo único que podía pensar era comenzar desde atrás y seguir adelante usando un rato.
Nota para los demás - Invertir no parece estar disponible en .NET marco 4. –