Tutorial de ASP.NET
Vista Previa de ASP.NET 2.0

Temas y Perfiles

Puede que queramos que los usuarios finales de nuestra aplicación puedan escoger y aplicar Temas de forma dinámica. Almacenando el Tema activo en un Perfil de Usuario podemos aplicar dinámicamente un tema basado en las preferencias de usuario. Para hacer ésto, aplicamos el tema mediante código en lugar de fijar el Tema declarándolo en la directiva @Page o Web.config.

Asignando un Tema Mediante Código

Para aplicar un Tema desde el código, estableceremos la propiedad Theme del objeto Page en tiempo de ejecución. Un tema debe ser aplicado a la página muy propnto en el ciclo de vida de una petición, en el evento PreInit. El siguiente ejemplo muestra un Tema aplicado dinámicamente en este evento cuando el usuario selecciona un nombre de Tema en un control DropDownList.

C# Asignando un Tema en Código



Utilizando la característica de Perfiles en ASP.NET 2.0 podemos almacenar las preferencias de usuario respecto a un Tema y reestablecerlas cuando el usuario se registra en nuestro sitio. El ejemplo que veremos a continuación muestra esta técnica. El usuario puede seleccionar su preferencia favorita de color y salvarla en su perfil, y la página establece el Tema basado en esta preferencia de color obteniendo el nombre del Tema del objeto Profile. Observad que si el usuario cierra la sesión en el sitio, el Tema vuelve al que tenemos por defecto (no hay Tema) pero si vuelve a iniciar sesión, la preferencia de usuario se mantiene.

C# Asignando un Tema Basado en un Perfil de Usuario