Freigeben über


IStyleSheet.RegisterStyle(Style, IUrlResolutionService) Methode

Definition

Bei Implementierung durch eine Klasse wird dem eingebetteten Stylesheet im <head>-Abschnitt einer Webseite eine neue Formatierungsregel hinzugefügt.

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)

Parameter

style
Style

Die Formatierungsregel, die dem eingebetteten Stylesheet hinzugefügt werden soll.

urlResolver
IUrlResolutionService

Ein in IUrlResolutionService implementiertes Objekt mit den Kontextinformationen für den aktuellen Speicherort (URL).

Beispiele

Im folgenden Codebeispiel wird die Implementierung von IStyleSheet verwendet, um das Header Erstellen eines benutzerdefinierten Objekts (labelStyle) zu veranschaulichen Style und es dann für den aktuellen Speicherort (URL) zu registrieren. Anschließend ruft die label1 Bezeichnung die MergeStyle -Methode auf, damit der labelStyle Stil auf die label1 Bezeichnung angewendet wird.

<%@ 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>

Hinweise

Diese Methode fügt dem eingebetteten Stylesheet innerhalb <head> des Abschnitts eines Objekts eine neue Stilregel und RegisteredCssClass einen Page Eigenschaftennamen hinzu und ordnet die Regel einem automatisch generierten Stilnamen zu. Das Style Objekt wird mit dem angegebenen urlResolver Parameter gerendert.

Wenn urlResolver auf nullfestgelegt ist, wird die URL des aktuellen Page verwendet.

Wenn ein Style Objekt bereits registriert ist, wird es nicht mehrmals hinzugefügt.

Hinweis

Das programmgesteuerte Hinzufügen oder Ändern von Formatvorlagen während asynchroner Postbacks wird nicht unterstützt. Wenn Sie ajax-Funktionen zu einer ASP.NET Webseite hinzufügen, aktualisieren asynchrone Postbacks die Bereiche der Seite, ohne die gesamte Seite zu aktualisieren. Weitere Informationen finden Sie unter Übersicht über Microsoft Ajax.

Gilt für: