IStyleSheet.RegisterStyle(Style, IUrlResolutionService) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Cuando lo implementa una clase, agrega una nueva regla de estilo a la hoja de estilos incrustada en la sección <head>
de una página Web.
public:
void RegisterStyle(System::Web::UI::WebControls::Style ^ style, System::Web::UI::IUrlResolutionService ^ urlResolver);
public void RegisterStyle (System.Web.UI.WebControls.Style style, System.Web.UI.IUrlResolutionService urlResolver);
abstract member RegisterStyle : System.Web.UI.WebControls.Style * System.Web.UI.IUrlResolutionService -> unit
Public Sub RegisterStyle (style As Style, urlResolver As IUrlResolutionService)
Parámetros
- style
- Style
Regla de estilo que se va a agregar a la hoja de estilos incrustada.
- urlResolver
- IUrlResolutionService
Objeto implementado por IUrlResolutionService que contiene la información de contexto de la ubicación actual (dirección URL).
Ejemplos
En el ejemplo de código siguiente se usa la implementación de IStyleSheet para mostrar cómo Header crear un objeto personalizadoStyle, y, a continuación, labelStyle
registrarlo para la ubicación actual (URL). A continuación, la label1
etiqueta llama al MergeStyle método para que el labelStyle
estilo se aplique a la label1
etiqueta.
<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
void Page_Load(object sender, EventArgs e)
{
if (Page.Header != null)
{
// Create a Style object to hold style rules to apply to a Label control.
Style labelStyle = new Style();
labelStyle.ForeColor = System.Drawing.Color.DarkRed;
labelStyle.BorderColor = System.Drawing.Color.DarkBlue;
labelStyle.BorderWidth = 2;
// Register the Style object so that it can be merged with
// the Style object of the controls that use it.
Page.Header.StyleSheet.RegisterStyle(labelStyle, null);
// Merge the labelCssStyle style with the label1 control's
// style settings.
label1.MergeStyle(labelStyle);
label1.Text = "This is what the labelCssStyle looks like.";
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="head1" runat="server">
<title>IStyleSheet Example</title>
</head>
<body>
<form id="form1" runat="server">
<h1>IStyleSheet Example</h1>
<asp:Label
id="label1"
runat="server">
</asp:Label>
</form>
</body>
</html>
<%@ page language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
If Not Page.Header Is Nothing Then
' Create a Style object to hold style rules to apply to a Label control.
Dim labelStyle As Style = New Style()
labelStyle.ForeColor = System.Drawing.Color.DarkRed
labelStyle.BorderColor = System.Drawing.Color.DarkBlue
labelStyle.BorderWidth = 2
' Register the Style object so that it can be merged with
' the Style object of the controls that use it.
Page.Header.StyleSheet.RegisterStyle(labelStyle, Nothing)
' Merge the labelCssStyle style with the label1 control's
' style settings.
label1.MergeStyle(labelStyle)
label1.Text = "This is what the labelCssStyle looks like."
End If
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="head1" runat="server">
<title>IStyleSheet Example</title>
</head>
<body>
<form id="form1" runat="server">
<h1>IStyleSheet Example</h1>
<asp:Label
id="label1"
runat="server">
</asp:Label>
</form>
</body>
</html>
Comentarios
Este método agrega una nueva regla de estilo y RegisteredCssClass un nombre de propiedad a la hoja de estilos incrustada dentro de la <head>
sección de un Page objeto y asocia la regla con un nombre de estilo generado automáticamente. El Style objeto se representa mediante el parámetro especificado urlResolver
.
Si urlResolver
se establece null
en , se usa la dirección URL del objeto actual Page .
Si un Style objeto ya está registrado, no se agrega varias veces.
Nota
No se admite la adición o modificación de estilos mediante programación durante los postbacks asincrónicos. Al agregar funcionalidades de AJAX a una página web de ASP.NET, los postbacks asincrónicos actualizan las regiones de la página sin actualizar toda la página. Para obtener más información, consulte Introducción a Microsoft Ajax.