ASP.NET 2.0 tiene una nueva función de Tema, que facilita el diseño del sitio web.
La implementación del tema incluye: CSS, Skin, MasterPage.
CSS se utiliza para controlar la apariencia de todas las etiquetas HTML.
Skin se utiliza para controlar la apariencia de todos los ajustes del servidor ASP.NET y su estilo CSS se puede definir mediante el atributo cssClass.
MasterPage es una plantilla de página *.aspx, pero no está definida en el Tema.
-------------------------------------------------- ----------------------------------
·Ejemplo de creación de un tema:
1. Cree el directorio App_Themes en el proyecto web. Es un directorio predefinido y ASP.NET 2.0 reconocerá automáticamente el tema en su directorio.
2. Cree dos subdirectorios, orangeTheme y BlueTheme, en el directorio App_Themes.
3. Agregue archivos Skin, como Control.Skin, a cada subdirectorio en App_Themes. ASP.NET 2.0 analizará automáticamente cada archivo Skin y el nombre aquí solo debe ser conveniente para la clasificación durante el desarrollo.
4. También puede agregar archivos CSS a cada subdirectorio en App_Themes. ASP.NET 2.0 también agregará automáticamente todos los archivos CSS a cada página que utilice este estilo.
·Definir el contenido de la página y el estilo del tema
1. La definición de la página default.aspx es la siguiente:
<%@ Page Theme="OrangeTheme" %>
<html>
<head runat="servidor">
<título>Página naranja</título>
</cabeza>
<cuerpo>
<formulario id="form1" runat="servidor">
Introduce tu nombre:<br />
<asp:TextBox ID="txtName" Runat="Servidor" />
<br /><br />
<asp:ID de botón="btnSubmit" Text="Nombre de envío" Runat="Servidor"/>
</formulario>
</cuerpo>
</html>
2. Defina lo siguiente en el archivo Control.Skin en la página de inicio de OrangeTheme:
Nota: Solo se pueden especificar atributos de apariencia y no se pueden especificar atributos como AutoPastback.
El skin predeterminado sin nombre definirá el skin para todos los tipos de TextBox.
<asp:TextBox BackColor="Naranja" ForeColor="Verde oscuro" Runat="Servidor" />
<asp:Button BackColor="Orange" ForeColor="DarkGreen" Font-Bold="True" Runat="Server" />
Tener un SkinID con nombre definirá la apariencia del tipo de TextBox especificado.
<asp:TextBox SkinID="Title" BackColor="Orange" ForeColor="DarkGreen" Runat="Server" />
·Usar tema en la página
1. Agregar Theme="Predeterminado en la parte superior del archivo Aspx <%@ Página %> " atributo. De esta manera puede usar el tema predeterminado.
2. Si desea aplicar un tema determinado a todo el sitio web, debe definirlo en Web.Config.
<configuración>
<sistema.web>
<páginas tema="OrangeTheme" />
</sistema.web>
</configuration>
Esta definición es equivalente a un tema predeterminado en todos los archivos del sitio web. El tema aún se puede definir para cada página cuando se usa.
La parte Skin utilizará el tema definido en la página y el CSS anulará la hoja de estilos CSS en la página de inicio predeterminada.
3. Después de especificar el Tema, todas las apariencias utilizarán las definidas en Skin. También puede especificar el SkinID de un control para definir máscaras individuales.
4. Si desea definir el tema mediante programación, debe procesarse en el evento Page_PreInit, de la siguiente manera:
void Page_PreInit(object sender, EventArgs e)
{
Page.Theme = Request["ThemeName"];
si necesita cargar mediante programación el archivo MasterPage para Page, también debe definirlo aquí.
this.MasterPageFile = Solicitud["MasterPageFile"];
}
Comprender estas tecnologías hará que el sitio web sea más versátil.