Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Actualización: noviembre 2007
Si se hereda de la clase base WebPart, puede proporcionar funciones de elementos Web a un control de servidor normal enlazado a datos. En las aplicaciones de elementos Web, los usuarios finales pueden modificar (personalizar) el comportamiento y la interfaz de usuario de los controles de servidor, y pueden guardar su configuración para futuras sesiones del explorador. Los usuarios pueden cambiar drásticamente la apariencia de una página si agregan o quitan controles, modifican las propiedades y la apariencia de los controles, reorganizan el diseño de página, importan o exportan configuraciones para los controles e incluso crean conexiones que permiten a los controles compartir datos. Para obtener más información acerca de las aplicaciones de elementos Web, vea los temas mostrados en Controles de elementos web ASP.NET. En este tema se describen los requisitos previos para utilizar un control WebPart personalizado enlazado a datos (o cualquier control de servidor) en una aplicación de elementos Web y se resumen algunos miembros de la clase base WebPart que suele ser útil implementar o reemplazar al crear un control personalizado. En el tema Ejemplo de un control de elementos Web enlazado a datos se proporciona un ejemplo de cómo reemplazar e implementar algunos de estos miembros.
Elementos necesarios para utilizar un control de elementos Web
Ningún control de elementos Web puede ejecutarse de forma aislada y conservar sus características de elementos Web. Si ejecuta un control WebPart en una aplicación Web sin los demás elementos necesarios para una aplicación de elementos Web, el control pierde sus características y funciones de elementos Web como un control de servidor normal. En la lista siguiente se explican los elementos necesarios que debe haber antes de poder utilizar un control WebPart personalizado con características de elementos Web:
El control WebPartManager. Este control debe estar presente en cada página que ofrezca funcionalidad de elementos Web. Para obtener información detallada, vea Información general sobre el conjunto de controles de elementos web.
Un control de zona WebPartZoneBase. Una página Web debe tener una zona que derive de esta clase abstracta, como el control WebPartZone, para contener controles WebPart. Para obtener información detallada, vea Información general sobre el conjunto de controles de elementos web.
Un sitio Web ASP.NET que puede reconocer a los usuarios individuales, utilizando autenticación de Windows o de formularios. Para obtener detalles sobre cómo crear un directorio o un sitio virtual, vea Cómo: Crear y configurar directorios virtuales en IIS 5.0 y 6.0 o Cómo: Crear y configurar sitios web ASP.NET locales en IIS 6.0.
Un proveedor de personalización configurado y una base de datos, para almacenar la configuración de usuario en los controles. La personalización de elementos Web está habilitada de manera predeterminada y utiliza el proveedor de personalización de SQL (SqlPersonalizationProvider) con Microsoft SQL Server Express (SSE) para almacenar datos de personalización. En este tutorial se utiliza SSE y el proveedor de SQL predeterminado. Si tiene SSE instalado, no se necesita ninguna configuración. SSE está disponible con Microsoft Visual Studio 2005 como una parte opcional de la instalación o como una descarga gratuita desde Microsoft.com. Para utilizar una de las versiones completas de Microsoft SQL Server, debe instalar y configurar una base de datos de servicios de aplicación de ASP.NET, y configurar el proveedor de personalización de SQL para que se conecte a dicha base de datos. Para obtener información detallada, vea Crear y configurar la base de datos de servicios de la aplicación para SQL Server. También puede crear y configurar un proveedor personalizado que se utilizará con otras bases de datos que no sean de SQL o con otras soluciones de almacenamiento. Para obtener información detallada y un ejemplo de código, vea Implementar un proveedor de suscripciones.
Miembros WebPart que se reemplazan o utilizan con frecuencia
Si bien puede utilizarse cualquier tipo de control de servidor en las aplicaciones de elementos Web, se obtienen algunas ventajas de la creación de controles WebPart personalizados (para obtener información detallada, vea Usar controles de servidor ASP.NET en aplicaciones de elementos Web). Cuando hereda de la clase base WebPart, no hay ningún miembro necesario que implementar. Sin embargo, hay algunos miembros que se utilizan con frecuencia que quizás desee utilizar o reemplazar y éstos se resumen en la tabla siguiente. Para obtener un ejemplo completo de un control de servidor enlazado a datos implementado como un control WebPart, vea Ejemplo de un control de elementos Web enlazado a datos. En la tabla siguiente se resumen algunos de los miembros utilizados con más frecuencia.
Miembro |
Descripción |
|---|---|
Un uso común de este constructor es establecer valores predeterminados en algunas de las propiedades que determinan la apariencia y el comportamiento de un control WebPart, como las propiedades heredadas de la clase Part, o propiedades de comportamiento como AllowEdit y AllowLayoutChange. |
|
Propiedades de comportamiento |
Esto incluye varias de las propiedades "Allow" de la clase, como AllowClose, AllowConnect, AllowEdit, AllowMinimize, AllowLayoutChange y AllowZoneChange. En lugar de asignar simplemente valores predeterminados a estas propiedades en el constructor, los desarrolladores pueden controlar por completo una propiedad, por ejemplo impidiendo que los usuarios o los desarrolladores que utilizan el control puedan cerrarlo. |
Cuando hereda de la clase WebPart, tiene que proporcionar una interfaz de usuario para su control personalizado. Una forma muy eficaz de hacerlo consiste en reemplazar el método CreateChildControls y, en este método, agregar otros controles de servidor para crear la interfaz de usuario del control personalizado. Quizás tenga que realizar otras tareas adicionales cuando agregue estos controles, como crear controladores de eventos personalizados para ellos o enlazarlos a un origen de datos. |
|
Métodos de representación |
Quizás tenga que reemplazar métodos de representación frecuentes como RenderControl o RenderContents. En estos métodos puede reemplazar completamente la representación o puede llamar primero al método base y, a continuación, modificar algún aspecto de la representación. |
Si crea objetos WebPartVerb personalizados que aparecerán en el menú de verbos del control con los verbos estándar (como cerrar y minimizar), debe agregarlos a la colección Verbs del control. |
|
Si crea controles EditorPart personalizados, para que los usuarios puedan modificar las propiedades personalizadas del control debe asociarlos a su control reemplazando el método CreateEditorParts. Para obtener un ejemplo, vea la interfaz IWebEditable. |
|
Cuando crea propiedades personalizadas en su control WebPart, con frecuencia deseará que los usuarios puedan modificar y personalizar dichas propiedades, como las propiedades estándar del control WebPart, de forma que se pueda guardar su configuración. Agregue el atributo de metadatos Personalizable a cualquier propiedad que los usuarios deban poder personalizar. |
Control WebPart enlazado a datos de ejemplo
Para obtener un ejemplo de código completo en el que se muestra cómo crear un control GridView que se enlaza a la base de datos Northwind, y en el que se implementa el control como un control WebPart, vea Ejemplo de un control de elementos Web enlazado a datos.
Vea también
Tareas
Tutorial: Crear una página de elementos Web
Conceptos
Información general sobre los elementos Web ASP.NET