WebParts con ASP.NET 2.0

Antes de entrar de lleno en toda la parafernalia de los webparts, voy a hacer una breve definición de un webparts. Se podría decir que es un bloque de nuestra web, con un determinado contenido, que los usuarios pueden personalizar a su gusto y antojo (Moviéndolo, ocultándolo, cerrándolo, etc), y dichos cambios se guardarán para posteriores visitas a la pagina donde se encuentren dichos webparts.

Vale!!! Esto está muy bien, pero… ¿cómo se crean los webparts? … Tranqui!!! Decirte que es sencillismo. Basta con crear una página web, añadir un control "WebPartManager" (este control es el primero que se debe de introducir o agregar antes que cualquier otro control, si no, no funcionará ok?. bien, sigo!! aaa!! Una cosa… cuando agregeís el WebPartManager, no os extrañeís al ver un recuadro gris, los WebPartManager no tienen un diseño. Sigo!!! (que me estoy enrrollando ya) A continuación agregaremos uno y varios controles "WebPartZone" (Consejo: Yó, antes de agregar los webparzone, añado una tabla la cual me delimitará las zonas donde se verán mis webparts). Tras agregar los webpartzone, ya puedo arrastrar cualquier control de la caja de herramientas dentro de las zonas y ¡VOILA!, ya tenemos un webpart, parece facil no? jejejeje! ¿Como es esto posible? Pues gracias a la clase "GenericWebParts".

Cada vez que arrastremos un control (por ejemplo un "Label") a una zona, Visual Studio creará como un envoltorio (wrapper) alrededor de dicho control, conviertiendoló en un GenericWebPart. El tener un envoltorio, el control agregado pasa a tener una serie de propiedades que de otra forma no tendría. Estas propiedades son tales como: "Title", "Descripción", "TitleIconImageUrl", "TitleUrl" y CatalogIconImageUrl". Además, gracias a este envoltorio podemos establecer comunicaciones de datos entre diferentes WebParts.

En realidad no todos los controles son iguales de buenos para ser convertidos en WebParts. Tomemos por ejemplo los controles "Literal". Si añadimos un literal a una zona tendremos un webParts pero sin embargo no tendremos las nuevas propiedades comentadas anteriormente. Entonces ¿Donde está la diferencia entre un Label y un literal? Pues que el Label desciende de la clase "Control", mientras que el segundo lo hace de "webControl". La clase "WebControl" implementa una serie de interfaces que son los que posibilitan que el envoltorio añada nuevas propiedades a nuestros controles, con lo que hay unas ciertas limitaciones. Lo primero que para empezar con webparts genericos no podremos aprovechar todas las posibilidades de los webparts. No podríamos, por ejemplo, añadir nuevas acciones al menu contextual, ni podríamos definir nuestras propias propiedades personalizables, por el usuario final.

About justindeveloper

I am MCP (Microsoft Certified Professional). MCTS (Microsoft Certified Technology Specialist) and MCPD (Microsoft Certified Professional Developer), also I am SAP Business One Certified!! Desarrollando desde el IDE de Visual Studio NET 2003 hasta ahora con el Visual Studio NET 2010. Desde Microsoft SQL Server 2000 hasta ahora con el Microsoft SQL Server 2008 R2 y tambien con SharePoint, desde WSS 3.0 y MOSS 2007 y ahora familirizandome con el Sharepoint Foundation 2010 & Sharepoint Server 2010. The software development will follow being every time more wonderful!
This entry was posted in Development. Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s