c#-4.0 ribbon

c# 4.0 - System.ComponentModel.Design.ExceptionCollection



c#-4.0 ribbon (6)

Dado que la solución descrita por pilotcam no me funcionó, adopté un enfoque diferente :

  1. Hacer una confirmación SVN para el archivo.
  2. Abra el archivo “* .designer.cs” del formulario que muestra el error en la vista de origen.
  3. Eliminar bloques más grandes de declaraciones de elementos de formulario.
  4. Repare todos los errores de compilación con ReSharper (es decir, asegúrese de que ya no haya nada rojo en el indicador lateral).
  5. Guarda el archivo. No hay necesidad de compilar.
  6. Abra el Diseñador de Windows Forms del formulario.
  7. Si el error sigue apareciendo, haga un reenvío SVN para volver al estado inicial.
  8. Repita los pasos 2 a 7 hasta que el error no aparezca más.
  9. Ahora ha rodeado el control secundario erróneo que causa el error.
  10. Repita los pasos 2 a 7 con una cantidad menor de controles que elimine, hasta que solo le quede un control.

En mi caso, fue un control de usuario dentro de un control de grupo dentro de un control de pestaña, así que primero identifiqué el control de pestaña, luego el control de grupo y luego el control de usuario.

Podría aislar el control del usuario dentro de un nuevo formulario para investigar más a fondo. En mi caso fue bastante fácil; Pongo verificaciones del modo de diseño alrededor de la mayoría de las funciones dentro de mi control para garantizar que el código solo se ejecute si el control no está en modo de diseño.

Esto solucionó mi error.

Estoy usando el control Ribbon ubicado en CodePlex y siguiendo el tutorial que se encuentra here . Una vez que agrego la referencia y el código correcto en el diseñador, aparece este error cuando intento ver el formulario:

Se ha producido una excepción del tipo ''System.ComponentModel.Design.ExceptionCollection''

Y no puedo entender lo que estoy haciendo mal. ¿Alguien trabajó con este control y sabe cómo resolver este problema?


Interesante; Acabo de encontrarme con este mismo problema con uno de mis propios formularios; que es como encontré tu pregunta relevante y reciente.

Así es como lo resolví:

  1. Abre dos instancias de Visual Studio. Abre el mismo proyecto en ambos.
  2. En una instancia, vaya a Depurar-> Excepciones y habilite todas las opciones de "Lanzar" para detener las excepciones de primera oportunidad. Esto detendrá al depurador cuando se genere la excepción.
  3. En la misma instancia, seleccione Depurar-> Adjuntar al proceso, seleccione devenv.exe.
  4. En el otro caso, abra el formulario para provocar la excepción
  5. Con un poco de suerte, la primera instancia debería detenerse en algún lugar que produzca una excepción más relevante.

En mi caso resultó ser algo que debería haber condicionado con:

if (!DesignMode) { // Do something that should only happen at runtime }

No te olvides de apagar todas las opciones de "Lanzamiento" más tarde.


Permítame agregar dos casos más cuando tal excepción puede ocurrir, junto con cuando el control intenta hacer algo que no está permitido en el modo de diseño:

  1. Cuando es imposible compilar el control del usuario.
  2. Cuando el código del diseñador contiene varias líneas similares (o idénticas) con la inicialización de los mismos controles o propiedades, esto puede suceder fácilmente en la combinación.

Todos los casos producen el mismo mensaje de error extremadamente significativo, y en este particular, dos de depuración de Visual Studio no ayudarán, así que acabé con la bisección de mi código de diseñador.


Tuve el mismo problema y ninguna de las respuestas anteriores resolvió el problema.

Al final, vaciar la carpeta "bin" y reconstruir ha funcionado para mí.


Una solución para mí fue:

  1. Haga clic derecho en el formulario y ''Ver código''
  2. Mantenga el código cargado en el editor y luego intente volver a ver el diseñador.

Esto se siente muy mal y no puedo confirmar si es un problema con mi código (ya que estoy trabajando en una base de código completamente nueva) o si es un error de VS2012. Si lo descubro, informaré de nuevo.


[ReadOnly(true)] [Browsable(false)]

Sobre todas las propiedades trabajaron para mi.