Página de error del Diseñador de Windows Forms (Windows Forms .NET)

Si el Diseñador de Windows Forms no se puede cargar debido a un error en el código, en un componente de terceros o en otro lugar, se presenta una página de error en lugar del diseñador. Esta página de error no significa necesariamente un error en el diseñador. El error puede estar en algún lugar del archivo de código subyacente. Los errores aparecen en barras amarillas contraíbles con un vínculo para ir a la ubicación del error en la página de códigos.

Pestaña de error del diseñador en Visual Studio que indica que falta el evento de un botón.

Importante

La documentación de la guía de escritorio para .NET 7 y .NET 6 está en proceso de elaboración.

Barra amarilla

La barra contraíble amarilla se crea para cada error, agrupado por descripción. En la barra se describe el error del compilador que impide que el diseñador cargue la propiedad . Incluye estos detalles:

  • El error del archivo reside en.
  • Columna y fila del archivo donde se produce el error.
  • Un código de error.
  • Descripción del error.
  • Vínculo para navegar directamente al error.

Instancias del error

Cuando la barra de error amarilla se expande, se muestra cada instancia del error. Muchos tipos de error incluyen una ubicación exacta en el formato siguiente: nombre del formulario de nombre<>de proyecto Nombre> de línea:número de> línea Columna:<<número> de columna.< Si una pila de llamadas está asociada al error, puede seleccionar el vínculo Mostrar pila de llamadas para verlo. Examinar la pila de llamadas puede ayudarle aún más a resolver el error.

Importante

Los elementos de un error pueden variar en función del lenguaje de código que use.

Ayuda con el error

Si hay disponible un artículo de ayuda para el error, seleccione el vínculo Ayuda de MSDN para ir directamente a la página de ayuda.

Entradas del foro sobre este error

Seleccione el vínculo Buscar en los foros de MSDN para ver las publicaciones relacionadas con este error para ir a los foros antiguos de Microsoft Developer Network. Es posible que quiera buscar o formular una pregunta en los foros de Microsoft Q&A o StackOverflow .

Errores comunes en tiempo de diseño

En esta sección se enumeran algunos de los errores que pueden aparecer.

El nombre '<name>' no existe en el contexto actual.

Normalmente, aparece este error al eliminar o cambiar el nombre de un controlador de eventos en el archivo de código subyacente al que hace referencia el archivo del diseñador. Abra form.designer<>.<langauge> code file and delete the event handler from the form or control.

'<nombre del identificador>' no es un identificador válido

Este error indica que un campo, un método, un evento o un objeto tiene un nombre inadecuado.

'<nombre>' ya existe en '<nombre del proyecto>'

Se ha especificado un nombre para un formulario heredado que ya existe en el proyecto. Para corregir este error, asigne un nombre único al formulario heredado.

'<nombre de pestaña del cuadro de herramientas>' no es una categoría del cuadro de herramientas

Un diseñador de terceros ha intentado acceder a una pestaña del Cuadro de herramientas que no existe. Póngase en contacto con el proveedor del componente.

Un analizador de lenguaje solicitado no está instalado

Visual Studio intentó cargar un diseñador registrado para el tipo de archivo, pero no pudo. Lo más probable es que se deba a un error que se produjo durante la instalación. Póngase en contacto con el proveedor del lenguaje que está usando para obtener una corrección.

Falta un servicio necesario para generar y analizar código fuente

Este error es un problema con un componente de terceros. Póngase en contacto con el proveedor del componente.

Se produjo una excepción al intentar crear una instancia de tipo '<nombre del objeto>'

Un diseñador de terceros solicitó que Visual Studio creara un objeto, pero el objeto generó un error. Póngase en contacto con el proveedor del componente.

Otro editor tiene abierto '<nombre del documento>' en un modo no compatible

Este error aparece si intenta abrir un archivo que ya está abierto en otro editor. Se muestra el editor donde ya está abierto el archivo. Para corregir este error, cierre el editor que tiene abierto el archivo e inténtelo de nuevo.

Otro editor ha realizado cambios en '<nombre del documento>'

Cierre y vuelva a abrir el diseñador para que los cambios surtan efecto. Normalmente, Visual Studio vuelve a cargar automáticamente un diseñador después de realizar cambios. Sin embargo, es posible que otros diseñadores, como los diseñadores de componentes de terceros, no admitan el comportamiento de recarga. En este caso, Visual Studio le pedirá que cierre y vuelva a abrir el diseñador manualmente.

Otro editor tiene abierto el archivo en modo incompatible

Este mensaje es similar a "Otro editor tiene "<nombre> de documento" abierto en un modo incompatible, pero Visual Studio no puede determinar el nombre de archivo. Para corregir este error, cierre el editor que tiene abierto el archivo e inténtelo de nuevo.

El rango de matriz '<rango de la matriz>' es demasiado alto

Visual Studio admite únicamente matrices de una sola dimensión en el bloque de código que el diseñador analiza. Las matrices multidimensionales son válidas fuera de esta área.

No se pudo abrir el ensamblado '<nombre del ensamblado>'

Este mensaje de error aparece cuando se intenta abrir un archivo que no se pudo abrir. Compruebe que el archivo existe y que es un ensamblado válido.

Tipo de elemento incorrecto. Este serializador espera un elemento del tipo '<nombre del tipo>'

Este error es un problema con un componente de terceros. Póngase en contacto con el proveedor del componente.

No se puede obtener acceso al Cuadro de herramientas de Visual Studio en este momento

Visual Studio realizó una llamada al cuadro de herramientas, que no estaba disponible. Si ve este error, registre un problema mediante la opción Notificar un problema.

No se puede enlazar un controlador de eventos al evento '<nombre del evento>' porque es de sólo lectura

Este error suele aparecer con más frecuencia cuando se ha intentado conectar un evento a un control heredado de una clase base. Si la variable miembro del control es privada, Visual Studio no puede conectar el evento al método. Los controles heredados de forma privada no pueden tener eventos adicionales enlazados a ellos.

No se puede crear un nombre de método para el componente solicitado porque no es miembro del contenedor de diseño

Visual Studio ha intentado agregar un controlador de eventos a un componente que no tiene una variable miembro en el diseñador. Póngase en contacto con el proveedor del componente.

No se puede asignar el nombre al objeto '<nombre>' porque ya tiene el nombre '<nombre>'

Este error es un error interno en el serializador de Visual Studio. Indica que el serializador ha intentado asignar un nombre a un objeto dos veces, lo cual no es posible. Si ve este error, registre un problema mediante la opción Notificar un problema.

No se puede quitar ni destruir un componente '<nombre del componente>' heredado

Los controles heredados son propiedad de la clase de la que heredan. Los cambios en el control heredado se deben realizar en la clase de la que procede el control. Por lo tanto, no se puede cambiar de nombre ni destruir.

La categoría '<nombre de la pestaña del cuadro de herramientas>' no tiene una herramienta para la clase '<nombre de la clase>'

El diseñador intentó hacer referencia a una clase en una determinada pestaña del cuadro de herramientas, pero la clase no existe. Póngase en contacto con el proveedor del componente.

La clase '<nombre de la clase>' no tiene ningún constructor coincidente

Un diseñador de terceros ha pedido a Visual Studio crear un objeto con unos parámetros concretos en un constructor que no existe. Póngase en contacto con el proveedor del componente.

Error al generar el código para la propiedad '<nombre de la propiedad>'

Este error es un contenedor genérico para un error. La cadena de error que acompaña a este mensaje proporciona más detalles sobre el mensaje de error y tiene un vínculo a un artículo de ayuda más específico. Para corregirlo, solucione el error especificado en el mensaje de error anexo a este.

El componente '<nombre del componente>' no llamó a Container.Add() en el constructor

Este mensaje está relacionado con un error en el componente que cargó o colocó en el formulario. Indica que el componente no se agregó a su control de contenedor (ya sea otro control o un formulario). El diseñador sigue funcionando, pero puede haber problemas con el componente en tiempo de ejecución.

Para corregir el error, póngase en contacto con el proveedor del componente. Si es un componente de su propia cosecha, llame al método IContainer.Add en el constructor del componente.

El nombre del componente no puede estar vacío

Este error aparece al intentar cambiar el nombre de un componente a un valor vacío.

No se puede obtener acceso a la variable '<nombre de la variable>' porque aún no se ha inicializado

Este error puede aparecer debido a dos escenarios. Un proveedor de un componente de terceros tiene un problema con un control o un componente que ha distribuido, o bien el código que ha escrito tiene dependencias recursivas entre componentes.

Para corregir este error, asegúrese de que el código no tiene una dependencia recursiva. Si ese no es el problema, anote el texto exacto del mensaje de error y póngase en contacto con el proveedor del componente.

No se encuentra el tipo '<nombre del tipo>'

Mensaje de error: "No se encuentra el tipo '<nombre del tipo>'. Asegúrese de que se hace referencia al ensamblado que contiene este tipo. Si el tipo es parte de su proyecto de desarrollo, asegúrese de que el proyecto se haya generado correctamente."

Este error se produjo porque no se encontró una referencia. Asegúrese de que hace referencia al tipo indicado en el mensaje de error y que también hace referencia a los ensamblados que el tipo requiera. A menudo, el problema es que no se ha generado un control en la solución. Para generarlo, seleccione Compilar solución en el menú Compilar. Si el control sí se ha generado, agregue una referencia manualmente desde el menú contextual de las carpetas Referencias o Dependencias de Explorador de soluciones.

No se pudo cargar el tipo '<nombre del tipo>'

Visual Studio intentó conectar un método de control de eventos y no pudo encontrar uno o varios tipos de parámetros del método. Este error suele deberse a una referencia que falta. Para corregir este error, agregue al proyecto la referencia que contiene el tipo e inténtelo de nuevo.

No se pudo encontrar las plantillas del elemento de proyecto de los componentes heredados

Las plantillas de los formularios heredados de Visual Studio no están disponibles. Si ve este error, registre un problema mediante la opción Notificar un problema.

La clase delegada '<nombre de la clase>' no tiene ningún método de invocación. ¿Esta clase es delegada?

Visual Studio ha intentado crear un controlador de eventos, pero hay algún problema con el tipo de evento. Este error puede producirse si el evento se creó mediante un lenguaje no compatible con CLS. Póngase en contacto con el proveedor del componente.

Declaración duplicada del miembro '<nombre del miembro>'

Este error aparece porque una variable miembro se ha declarado dos veces (por ejemplo, hay dos controles denominados Button1 declarados en el código). Los nombres en los formularios heredados deben ser únicos. Asimismo, tampoco pueden diferenciarse solo por el uso de mayúsculas y minúsculas.

Error al leer los recursos del archivo de recursos para la referencia cultural '<nombre de la referencia cultural>'

Este error puede producirse si hay un archivo .resx incorrecto en el proyecto.

Para corregir dicho error:

  1. Seleccione el botón Mostrar todos los archivos en Explorador de soluciones para ver los archivos .resx asociados a la solución.
  2. Cargue el archivo .resx en el Editor XML; para ello, haga clic con el botón derecho en el archivo .resx y seleccione Abrir.
  3. Edite el archivo .resx manualmente para solucionar los errores.

Error al leer los recursos del archivo de recursos para la referencia cultural predeterminada '<nombre de la referencia cultural>'

Este error puede producirse si hay un archivo .resx incorrecto en el proyecto relativo a la referencia cultural predeterminada.

Para corregir dicho error:

  1. Seleccione el botón Mostrar todos los archivos en Explorador de soluciones para ver los archivos .resx asociados a la solución.
  2. Cargue el archivo .resx en el Editor XML; para ello, haga clic con el botón derecho en el archivo .resx y seleccione Abrir.
  3. Edite el archivo .resx manualmente para solucionar los errores.

No se pudo analizar el método '<nombre del método>'

Mensaje de error: "No se pudo analizar el método '<nombre del método>'. El analizador informó del siguiente error: '<cadena de error>'. Busque posibles errores en la lista de tareas."

Se trata de un mensaje de error general relativo a problemas que surgen durante el análisis. Estos errores suelen deberse a errores de sintaxis. Consulte la lista de tareas para ver mensajes específicos relacionados con el error.

Nombre de componente no válido: '<nombre del componente>'

Se ha intentado cambiar el nombre de un componente a un valor no válido en ese lenguaje. Para corregir este error, asigne al componente un nombre que cumpla con las reglas de nomenclatura de ese lenguaje.

El tipo '<nombre de la clase>' consta de varias clases parciales en el mismo archivo

Al definir una clase en varios archivos mediante la palabra clave partial, solo puede haber una definición parcial en cada archivo.

Para corregir este error, quite todas las definiciones parciales de la clase del archivo.

No se pudo encontrar el ensamblado '<nombre del ensamblado>'

Este error es similar a "No se encontró el tipo '<nombre> de tipo'", pero este error suele ocurrir debido a un atributo de metadatos. Para corregir este error, compruebe que se hace referencia a todos los ensamblados usados por atributos.

El nombre de ensamblado '<nombre del ensamblado>' no es válido

Un componente ha solicitado un ensamblado determinado, pero el nombre proporcionado por el componente no es un nombre de ensamblado válido. Póngase en contacto con el proveedor del componente.

La clase base '<nombre de la clase>' no se puede diseñar

Visual Studio cargó la clase, pero no se puede diseñar porque el implementador de la clase no proporcionó un diseñador. Si la clase admite un diseñador, asegúrese de que no hay problemas que provoquen errores al mostrarla en un diseñador, como errores de compilador. Asimismo, asegúrese de que todas las referencias a la clase son correctas y que todos los nombres de clase están bien escritos. Si la clase no se puede diseñar, edítela en la vista Código.

La clase base '<nombre de la clase>' no se puede cargar

No existe una referencia a la clase en el proyecto, por lo que Visual Studio no puede cargarla. Para corregir este error, agregue una referencia a la clase en el proyecto y, tras ello, cierre y vuelva a abrir la ventana del Diseñador de Windows Forms.

No se puede diseñar la clase '<nombre de la clase>' con esta versión de Visual Studio

El diseñador de este control o componente no admite los mismos tipos que Visual Studio. Póngase en contacto con el proveedor del componente.

El nombre de clase no es un identificador válido para este lenguaje

El código fuente creado por el usuario tiene un nombre de clase que no es válido para el idioma que se usa. Para corregir este error, asigne un nombre a la clase de modo que cumpla los requisitos del lenguaje.

No se puede agregar el componente porque contiene una referencia circular a '<nombre de la referencia>'

No se puede agregar un control o un componente a sí mismo. Otra situación en la que esto puede ocurrir es si hay código en el método InitializeComponent de un formulario (por ejemplo, Form1) que crea otra instancia de Form1.

No se puede modificar el diseñador en este momento

Este error se produce cuando el archivo del editor está marcado como de solo lectura. Asegúrese de que el archivo no está marcado como de solo lectura y que la aplicación no se está ejecutando.

No se puede mostrar el diseñador para este archivo porque ninguna de las clases que contiene se puede diseñar

Este error se produce cuando Visual Studio no encuentra una clase base que cumpla los requisitos del diseñador. Los formularios y los controles deben derivar de una clase base que admita diseñadores. Si derivan de un formulario o control heredados, asegúrese de que el proyecto se ha compilado.

El diseñador para la clase base '<nombre de la clase>' no está instalado

Visual Studio no pudo cargar el diseñador para la clase. Si ve este error, registre un problema mediante la opción Notificar un problema.

El diseñador debe crear una instancia de tipo '<nombre del tipo>', pero no se puede crear porque el tipo se ha declarado como abstracto

Este error se produjo porque la clase base del objeto pasado al diseñador es de tipo abstract, lo cual no se permite.

No se puede cargar el archivo en el diseñador

La clase base de este archivo no admite diseñadores. Como solución alternativa, use la vista Código para trabajar en el archivo. Haga clic con el botón derecho en el archivo en el Explorador de soluciones y seleccione Ver código.

El lenguaje de este archivo no admite los servicios de análisis y generación de código necesarios

Mensaje de error: "El lenguaje de este archivo no admite los servicios de análisis y generación de código necesarios. Asegúrese de que el archivo que está abriendo es miembro de un proyecto e intente abrir el archivo de nuevo".

Este error probablemente se debió a que se abrió un archivo que está en un proyecto que no admite diseñadores.

La clase del analizador de lenguaje '<nombre de la clase>' no se ha implementado correctamente

Mensaje de error: "La clase del analizador de lenguaje '<nombre de la clase>' no se ha implementado correctamente. Póngase en contacto con el proveedor para obtener un módulo de analizador actualizado."

El lenguaje en uso ha registrado una clase de diseñador que no deriva de la clase base correcta. Póngase en contacto con el proveedor del lenguaje que esté usando.

El nombre '<nombre>' ya está en uso por otro objeto

Se trata de un error interno en el serializador de Visual Studio. Si ve este error, registre un problema mediante la opción Notificar un problema.

El objeto '<nombre> de objeto' no implementa la IComponent interfaz

Visual Studio intentó crear un componente, pero el objeto creado no implementa la interfaz IComponent. Póngase en contacto con el proveedor del componente para obtener una corrección.

El objeto '<nombre del objeto>' devolvió un valor nulo para la propiedad '<nombre de la propiedad>' pero no se permite

Hay algunas propiedades de .NET que siempre deben devolver un objeto. Por ejemplo, la colección Controls de un formulario siempre debe devolver un objeto, aun cuando no haya ningún control en ella.

Para corregir este error, asegúrese de que la propiedad especificada en el error no sea null.

El objeto de datos de serialización no es del tipo correcto

Un objeto de datos ofrecido por el serializador no es una instancia de un tipo que coincida con el serializador actual que se está usando. Póngase en contacto con el proveedor del componente.

Se requiere el servicio '<nombre del servicio>', pero no se pudo encontrar

Un servicio requerido por Visual Studio no está disponible. Si intentó cargar un proyecto que no admite ese diseñador, use el Editor de código para realizar los cambios en su lugar. De lo contrario, si ve este error, registre un problema mediante la opción Notificar un problema.

La instancia de servicio debe derivarse de '<nombre de la interfaz>' o implementarlo

Este error indica que un componente o un diseñador de componentes ha llamado al método AddService, que requiere una interfaz y un objeto, pero el objeto especificado no implementa la interfaz especificada. Póngase en contacto con el proveedor del componente.

El texto de la ventana de código no puede modificarse

Este error se produce cuando Visual Studio no puede editar un archivo debido a problemas de espacio en disco o de memoria, o si el archivo está marcado como de solo lectura.

El objeto enumerador del cuadro de herramientas sólo admite recuperar un elemento cada vez

Si ve este error, registre un problema mediante la opción Notificar un problema.

No se pudo recuperar el elemento del cuadro de herramientas para '<nombre del componente >' del cuadro de herramientas

El componente en cuestión produjo una excepción cuando Visual Studio accedió a él. Póngase en contacto con el proveedor del componente.

No se pudo recuperar el elemento Toolbox para '<nombre del elemento Toolbox>' del cuadro de herramientas

Este error se produce si los datos del elemento Toolbox están dañados o la versión del componente ha cambiado. Pruebe a quitar el elemento Toolbox y a agregarlo de nuevo.

No se pudo encontrar el tipo '<nombre del tipo>'

Cuando se carga el diseñador, Visual Studio no pudo encontrar un tipo. Asegúrese de que se hace referencia al ensamblado que contiene el tipo. Si el ensamblado forma parte del proyecto de desarrollo actual, asegúrese de que se ha compilado el proyecto.

Sólo se puede llamar al servicio de resolución de tipos desde el subproceso de la aplicación principal

Visual Studio intentó acceder a los recursos necesarios desde el subproceso incorrecto. Este error se muestra cuando el código usado para crear el diseñador ha llamado al servicio de resolución de tipos desde un subproceso distinto al subproceso de aplicación principal. Para corregir este error, llame al servicio desde el subproceso correcto o póngase en contacto con el proveedor del componente.

La variable '<nombre de la variable>' no está declarada o no se asignó nunca

El código fuente tiene una referencia a una variable, como Button1, que no está declarada ni asignada. Si la variable no está asignada, este mensaje aparece como una advertencia, no como un error.

Ya hay un controlador de comandos del comando de menú '<nombre del comando de menú>'

Este error aparece si un diseñador de terceros agrega a la tabla de comandos un comando que ya tiene un controlador. Póngase en contacto con el proveedor del componente.

Ya hay un componente denominado '<nombre del componente>'

Mensaje de error: Ya hay un componente denominado '<nombre del componente>' Los componentes deben tener nombres únicos y los nombres no deben distinguir entre mayúsculas y minúsculas. Un nombre tampoco puede entrar en conflicto con el nombre de ningún componente de una clase heredada."

Este mensaje de error aparece cuando se ha producido un cambio en el nombre de un componente en la ventana Propiedades. Para corregir este error, asegúrese de que todos los nombres de componente son únicos, no distinguen mayúsculas de minúsculas y no entran en conflicto con los nombres de ninguno de los componentes de las clases heredadas.

Ya hay un creador de elemento Toolbox registrado para el formato '<nombre del formato>'

Un componente de terceros realizó una devolución de llamada a un elemento en una pestaña Cuadro de herramientas, pero el elemento ya contenía una devolución de llamada. Póngase en contacto con el proveedor del componente.

Este motor de lenguaje no es compatible con un modelo de código con el que cargar un diseñador

Este mensaje es similar a "El lenguaje de este archivo no admite los servicios de análisis y generación de código necesarios", pero este mensaje implica un problema de registro interno. Si ve este error, registre un problema mediante la opción Notificar un problema.

El tipo '<nombre del tipo>' no tiene un constructor con parámetros de los tipos '<nombres de los tipos de parámetro>'

Visual Studio no pudo encontrar un constructor con parámetros coincidentes. Este error puede ser el resultado de proporcionar un constructor con tipos distintos de los necesarios. Por ejemplo, un constructor Point puede tomar dos enteros. Si proporcionó tipos float, se genera este error.

Para corregir este error, use otro constructor o convierta explícitamente los tipos de parámetro de forma que coincidan con los proporcionados por el constructor.

No se puede agregar la referencia '<nombre de la referencia>' a la aplicación actual

Visual Studio no puede agregar una referencia. Para corregir este error, compruebe que no se está haciendo referencia ya a otra versión diferente de la referencia.

No se puede desproteger el archivo actual

Este error aparece cuando se cambia un archivo que está protegido actualmente en el control de código fuente. Normalmente, Visual Studio abre el cuadro de diálogo de desprotección de archivos para que el usuario pueda desproteger el archivo. Esta vez, el archivo no se desprotegió, quizás debido a un conflicto de combinación durante la operación de desprotección. Para corregir este error, asegúrese de que el archivo no está bloqueado y, a continuación, intente desprotegerlo manualmente.

No se puede encontrar la página denominada '<nombre de la pestaña del cuadro de diálogo Opciones>'

Este error se produce cuando un diseñador de componentes solicita acceso a una página desde el cuadro de diálogo Opciones con un nombre que no existe. Póngase en contacto con el proveedor del componente.

No se puede encontrar la propiedad '<nombre de la propiedad>' en la página '<nombre de la pestaña en el cuadro de diálogo Opciones>'

Este error se produce cuando un diseñador de componentes solicita acceso a un valor concreto en una página desde el cuadro de diálogo Opciones, pero dicho valor no existe. Póngase en contacto con el proveedor del componente.

Visual Studio no puede abrir un diseñador para el archivo porque la clase incluida no hereda de ninguna clase que se pueda diseñar visualmente

Visual Studio cargó la clase, pero el diseñador de esa clase no se pudo cargar. Visual Studio requiere que los diseñadores usen la primera clase de un archivo. Para corregir este error, mueva el código de la clase para que sea la primera del archivo y, después, cargue de nuevo el diseñador.

Visual Studio no puede guardar o cargar instancias del tipo '<nombre del tipo>'

Se trata de un problema con un componente de terceros. Póngase en contacto con el proveedor del componente.

Visual Studio no puede abrir '<nombre del documento>' en la vista Diseño

Este error indica que el lenguaje del proyecto no admite un diseñador, y aparece cuando se intenta abrir un archivo en el cuadro de diálogo Abrir archivo o desde Explorador de soluciones. En su lugar, edite el archivo en la vista Código.

Visual Studio no puede encontrar un diseñador para las clases de tipo '<nombre del tipo>'

Visual Studio cargó la clase, pero la clase no se puede diseñar. En su lugar, edite la clase en la vista Código; para ello, haga clic con el botón derecho en la clase y seleccione Ver código.