Udostępnij za pośrednictwem


IStyleSheet.RegisterStyle(Style, IUrlResolutionService) Metoda

Definicja

Po zaimplementowaniu przez klasę dodaje nową regułę stylu do osadzonego arkusza stylów w <head> sekcji strony sieci 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)

Parametry

style
Style

Reguła stylu, która ma zostać dodana do osadzonego arkusza stylów.

urlResolver
IUrlResolutionService

Obiekt IUrlResolutionServiceimplementowany zawierający informacje kontekstowe dla bieżącej lokalizacji (url).

Przykłady

Poniższy przykład kodu używa Header implementacji IStyleSheet programu , aby zademonstrować tworzenie obiektu niestandardowego Style , labelStylea następnie zarejestrowanie go w bieżącej lokalizacji (adres URL). Następnie etykieta label1 wywołuje metodę MergeStyle , aby labelStyle styl został zastosowany do label1 etykiety.

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

Uwagi

Ta metoda dodaje nową regułę stylu i RegisteredCssClass nazwę właściwości do osadzonego arkusza stylów w <head> sekcji Page obiektu i kojarzy regułę z automatycznie wygenerowaną nazwą stylu. Obiekt Style jest renderowany przy użyciu określonego urlResolver parametru.

Jeśli urlResolver ustawiono wartość null, używany jest adres URL bieżącej Page wartości.

Style Jeśli obiekt jest już zarejestrowany, nie jest on dodawany wiele razy.

Uwaga

Dodawanie lub modyfikowanie stylów programowo podczas asynchronicznych poświadczeń nie jest obsługiwane. Po dodaniu funkcji AJAX do strony sieci Web ASP.NET asynchroniczne ogłaszanie zwrotne aktualizuje regiony strony bez aktualizowania całej strony. Aby uzyskać więcej informacji, zobacz Microsoft Ajax Overview (Omówienie usługi Microsoft Ajax).

Dotyczy