domingo, 20 de julio de 2014

¿Qué es un MasterPage?



Cuando creamos un sitio web tenemos la necesidad de repetir ciertas partes de una página en todo el sitio o en parte del sitio. Para no estar copiando y pegando las mismas estructuras en todas las páginas lo que podemos hacer es crear un Master Page y referenciarla en las otras páginas.

Un MasterPage nos permite agregar secciones que son compartidas entre todas las páginas que la usan, de tal manera que dichas secciones son creadas y estructuradas en un solo lugar, pero usadas en todas las páginas. Si queremos modificar una sección, nos vamos al MasterPage y lo hacemos, y no debemos preocuparnos por el resto de páginas, porque la modificación es visible en todas ellas.

Para crear un MasterPage, damos click derecho en la carpeta del proyecto -> Add -> Add New Item...

En la ventana de diálogo Add New Item, en el panel de la izquierda seleccionamos el lenguaje C#. A la derecha seleccionamos la opción MasterPage. Luego, abajo le damos un nombre al MasterPage. Para este ejemplo pongamosle Main. Le damos click al botón Add.


En el presente artículo no se desea entrar mucho en detalle sobre los MasterPage, esto lo veremos conforme vayamos viendo más ejemplos.

Si nos vamos a ver la estructura del MasterPage que crea Visual Studio, observaremos un elemento llamado ContentPlaceHolder. Este representa una área de contenido para las páginas que usan el MasterPage. En otras palabras, el MasterPage contendrá todo lo que se desea compartir entre todas las páginas. Cada página individual puede agregar contenido dentro de éstas áreas establecidas en el MasterPage, y es lo que hará que cada una de ellas tengan contenidos distintos, compartiendo la estructura del MasterPage.

Podemos ver que hay un ContentPlaceHolder en el área head del HTML y otro en el área body. Sin embargo, podemos agregar cuantos ContentPlaceHolder necesitemos y así establecer otras áreas de contenido.


Ahora veremos el código fuente del MasterPage. Damos click derecho sobre el HTML del MasterPage y seleccionamos del menú contextual la opción View Code.


Vemos que se creó un método Page_Load para el evento Load. Al igual que una página normal, un MasterPage sigue un ciclo de vida con una serie de eventos similares a las de una página. Dentro del archivo de código del MasterPage, comúnmente llamado CodeBehind, podemos agregar nuestra programación correspondiente al MasterPage.

Más adelante podremos desarrollar ejemplos más detallados usando MasterPage. Por el momento, dejaremos esto hasta aquí.

No hay comentarios:

Publicar un comentario

Nota: solo los miembros de este blog pueden publicar comentarios.