Mejorar la compatibilidad en tiempo de diseño
.NET Framework ofrece una arquitectura extensible para personalizar el comportamiento y la presentación de componentes y controles en modo de diseño. Esta arquitectura con compatibilidad en tiempo de diseño permite a los programadores crear extensiones en tiempo de diseño para componentes y controles. Los programadores pueden proporcionar un comportamiento personalizado en tiempo de diseño, interfaces de configuración de valores, generación de código para la inicialización de propiedades y sacar partido de los servicios proporcionados por el entorno en tiempo de diseño.
Por ejemplo, si define una propiedad personalizada en un tipo personalizado de un control, puede proporcionar una interfaz de usuario personalizada, o un editor de tipos, para editar el valor de la propiedad en un examinador de propiedades. Se puede crear una clase denominada diseñador que puede administrar diversos aspectos de un componente o la apariencia y comportamiento de un control en tiempo de diseño.
En el pasado, la compatibilidad de este tipo de lógica especial para componentes en modo de diseño, estaba integrada en el diseñador de formularios, y era el diseñador de formularios, no el objeto, el responsable de proporcionar las capacidades de tiempo de diseño. Por ejemplo, en el entorno de ActiveX, cada herramienta ofrecía su propio diseñador de formularios, con distintas interfaces de usuario y capacidades. Dado que el conjunto invariable de características de un producto no podía satisfacer las necesidades de todos los controles, los controles ActiveX admitían las personalizaciones en tiempo de diseño de forma limitada.
Sin embargo, la compatibilidad en tiempo de diseño de los componentes de .NET Framework no está definida exclusivamente por una herramienta de diseño como Microsoft Visual Studio.NET. En su lugar, el entorno de desarrollo admite la extensión y definición de comportamiento en tiempo de diseño, mediante clases, como por ejemplo diseñadores, que ofrecen la posibilidad de modificar el comportamiento de los componentes en tiempo de diseño. La compatibilidad con el comportamiento en modo de diseño personalizable y extensible constituye una parte integrada de .NET Framework. Las herramientas como Visual Studio .NET también ofrecen una gama de servicios en tiempo de diseño que pueden utilizar los diseñadores.
En esta sección, se ofrece información general y ejemplos que servirán de ayuda a los programadores de componentes y controles para agregar a los componentes funcionalidad en tiempo de diseño.
Aunque la mayoría de los sistemas de tiempo de diseño descritos en esta sección se aplican a los componentes en general, algunas son específicas de los formularios Web Forms o Windows Forms. En tiempo de diseño existen diferencias entre los formularios Web Forms y los formularios Windows Forms ASP.NET porque el mecanismo de procesamiento de los controles de servidor ASP.NET es distinto del procesamiento de los controles de formularios Windows Forms. Un control de servidor ASP.NET envía HTML (u otro lenguaje de marcado) a un cliente, que se procesa mediante el explorador del cliente u otro dispositivo de presentación. Por otro lado, un control de formularios Windows Forms realiza su propio dibujo utilizando GDI+ (la nueva biblioteca gráfica de Windows).
En esta sección
- Arquitectura en tiempo de diseño
Ofrece una descripción general de la arquitectura en tiempo de diseño de .NET Framework. - Atributos y compatibilidad en tiempo de diseño
Explica cómo utilizar atributos personalizados para asociar la compatibilidad en tiempo de diseño a un componente o control determinado. - Conversión de tipos generalizada
Describe métodos para realizar conversiones de tipos de datos sobre valores. - Implementar un conversor de tipos
Describe la forma de implementación de un convertidor de tipos para trasladar valores entre tipos de datos, generar código de inicialización de propiedades en tiempo de diseño y suministrar una lista de valores estándar a la cuadrícula de propiedades de un tipo de datos compatible. - Implementar un editor de tipos de interfaz de usuario
Explica cómo implementar un editor de tipos de interfaz de usuario (IU) que permita la configuración visual de un valor para un tipo personalizado. - Implementar un proveedor extensor
Explica cómo implementar un proveedor extensor que permita agregar propiedades a un componente en tiempo de diseño o en tiempo de ejecución. - Diseñadores personalizados
Explica los conceptos principales de la implementación de un diseñador (una clase que puede controlar la representación y comportamiento visual de un componente en tiempo de diseño). - Compatibilidad en tiempo de diseño con formularios Web Forms
Describe los detalles de la implementación de la compatibilidad en tiempo de diseño para los formularios Web Forms y proporciona ejemplos de diseñadores de formularios Web Forms. - Compatibilidad en tiempo de diseño con formularios Windows Forms
Proporciona ejemplos de implementaciones en formularios Windows Forms en tiempo de diseño, como editores de tipos de interfaz de usuario, proveedores extensores y diseñadores.
Secciones relacionadas
- Atributos en tiempo de diseño para componentes
Enumera los atributos que se aplican normalmente a las propiedades y a los eventos en los componentes y controles.