Hay muchas formas de cambiar máscaras. La más sencilla suele ser cambiar el CSS de página, y el CSS suele escribirse en un archivo CSS externo. Entonces, cambiar CSS en realidad está cambiando la ruta href del enlace en html. Busqué en línea. Generalmente hay dos formas:
1. Colocar un control de titular en la página. Luego escriba el enlace CSS del estilo del usuario actual a la página mediante programación.
2. Establezca estilos CSS en cada control a través del mecanismo de reflexión.
Los dos métodos anteriores son bastante problemáticos.
El primero requiere colocar un control de titular en cada página. Un enfoque similar es agregar runat=server a la etiqueta del enlace. Si hay demasiadas páginas, será más problemático.
No es necesario considerar el segundo. Hay muchos problemas con la eficiencia de la programación del rendimiento.
Recuerdo que cuando estaba aprendiendo DNN, encontré una manera de modificar la dirección de acción predeterminada en el formulario. Consúltelo directamente. nada mal:
Anular directamente el evento de renderizado
anulación protegida void Render (escritor System.Web.UI.HtmlTextWriter)
{
StringWriter sw = nuevo StringWriter();
HtmlTextWriter htmlWriter = nuevo HtmlTextWriter(sw);
base.Render(htmlWriter);
//El estilo CSS seleccionado por el usuario actual
string css = "<link href="css url" rel="stylesheet" type="text/css">"
;
int startPoint = html.IndexOf("</head>", StringComparison.CurrentCultureIgnoreCase);
si (punto de inicio > 0)
{
html = html.Insert(punto de inicio, css);
}
escritor.Write(html);
}
Ponga esto en la clase base PageBase de cada página. Sería mucho más conveniente.
Por supuesto, si no desea que cada página herede una clase base personalizada, también puede escribirla en HttpModule. También es muy conveniente.
Escríbalo en un solo lugar y será útil para cada página.
http://www.cnblogs.com/kwklover/archive/2007/01/03/610822.html