Guía básica: Asp. Net C#. Porque usar masterpage

Guía básica: Asp. Net C#. Porque usar masterpage

Si se han fijado en las páginas web, una característica en común es que en casi todo el sitio en cuestión, tiene el mismo diseño sin que las páginas, cada vez que navegas a través de ellas, tengan un problema de diseño. Para lograr esto, se debe contar con una plantilla, a la cual aplicar a nuestras páginas. Esto es posible a través de asp.net 2.0 en adelante.

Lo mejor de todo, es que estas “plantillas” llamadas masterpage tiene la misma funcionalidad que una página aspx, es decir, también se puede agregar controles asp y agregar código del lado del servidor. Además, estos controles y códigos estarán disponibles en todas las páginas que tengan esta plantilla asignada. Otra ventaja que se tiene es que tendrán soporte en diseño (WYSIWYG), lo que ves es lo que obtienes.

Si no contamos con un diseñadore que nos pueda dar un template con estilos, les dejo unas ligas donde podemos obtener dichos templates de manera gratuita:
FreeCssTemplates.org
WebSiteTemplates
WebSiteTemplatesOnline

Lo primero que tenemos que hacer es crear un nuevo sitio web. Ya que este creado, en caso de ser necesario, agregar tu web.config, global.asax y nuestra masterpage.master. Después, con los sitios antes mencionados, agregamos el contenido a nuestra carpeta raíz.

Generalmente, lo que tendrá nuestro template, es una carpeta con imágenes, una página html con el template que tendremos que copiar y uno o más archivos con los estilos (Archivos Css). Lo que vamos a hacer es copiar el contenido completo de la página html y la pegaremos a nuestra página masterpage.master. Aquí tenemos que tener el cuidado de tener en cuenta, que nuestra marterpage requiere tener como mínimo un contentplaceholder. En el contentplaceholder es donde el programador en sus páginas aspx tendrá el espacio para programar, el resto de la página aparecerá bloqueada

Como se puede ver en nuestra primera imagen, al agregar una página nueva, en la parte de abajo aparece una opción que dice “seleccionar master page”. Esto hace que la página nueva tenga un nuevo “look” en donde tendremos todo bloqueado, menos el área indicada dentro del contentplaceholder.

De aquí en adelante esta de nuestra parte como programadores. La enorme ventaja de programar con masterpage como hemos mencionado, es que tendremos un template únicamente y todas nuestras páginas tendrán el mismo diseño. Así solo tendremos que modificar una sola página y nuestro sitio de manera automática se verá reflejado dicho cambio. Espero esta información sea de su utilidad.

Notas relacionadas :

You can leave a response, or trackback from your own site.

5 Responses to “Guía básica: Asp. Net C#. Porque usar masterpage”

  1. Gaspar Dzul dice:

    Buen post aunque muy basico, Cabe mencionar que asi como la Master Page tiene muy buenas ventajas, tambien tiene desventajas, y una de las desventajas es de que no podemos cambiar dinamicamente desde una pagina que usa una master page, algun atributo de la master page, ya que nos lo tienen bloqueado.
    Pero sin duda concuerdo contigo de que nos facilita mas el diseño y menos lineas repetidas de codigo.
    Seria bueno que hagan un tutorial o manualillo que explique mejor esto de las master page.

    • hlopez dice:

      Me quedo con la tarea de poner un post más amplio sobre este tema. Una pregunta, cuando mencionas que te sientes limitado en cuanto cambios dinámicos de una página que usa la mastepage, pudieras explicar un poco más? Me refiero a que con tus estilos puedes dar mantenimiento al diseño de tu masterpage y el contenido en el contenplaceholder de tu página, y en cuanto información de una base de datos que presenta, tienen la opción de programar directamente en la masterpage para que todas las páginas que lo tengan se vea dicha información (desde luego en tus páginas que tengan esa masterpage). Un ejemplo es diseñar una masterpage con un “sistema de avisos”, de esta forma siempre se verá reflejado dicha información en todas sus páginas. Espero tus valiosos comentarios, saludos.

      • Gaspar Dzul dice:

        Hola hlopez en primera me complace que me hayan contestado, mira yo hace unos meses que empecé con esto de asp.net y hace poco con las master pages, yo programo en c#,php,sql,jsp,VB etc lo cual se me facilitó mucho aprender asp.net con c# pero al usar una master page me sucede de que por ejemplo, el cliente me pide que si a la pagina entra un usuario de tipo administrador(por poner un ejemplo) que en el menu de la master page me salgan mas opciones, y que cuando entre un usuario de tipo normal que me salgan menos opciones. Esto yo lo tuve que solucionar haciendo dos master pages, uno para el admin y otro para el usuario normal por que no encontré la manera de ocultar dinamicamente los menus de la master page, desde una pagina normal ya que no se tiene acceso a las partes que no sean contentplaceholder. a menos que el menu sea un content place holder lo cual no se me hace didactico :) . Si me podrias orientar o mostrar como lo harias te lo agradecería. Saludos…..

        • maikaexec dice:

          La solución está en lograr acceder a las propiedades o métodos de la Master Page. Ya sea creando un método público o creando el set y el get para alguna propiedad que desees puedes lograr esto. Opcionalmente puedes ejecutar código dentro del cs de la master, espero haber contestado tu pregunta. Gracias por tus comentarios.

          Para más información, ver el siguiente Ejemplo

          • Gaspar Dzul dice:

            OOOrales muy bueno eee, eso andaba buscando en la red, y pus la vdd muy buena explicacion. Pense que era mas dificil y imposible de hacer. Gracias por su apoyo.. Saludos

Deje una respuesta

Webdesign