IStyleSheet Interfejs

Definicja

Definiuje metody, które klasa musi zaimplementować w celu obsługi tworzenia reguł stylów.

public interface class IStyleSheet
public interface IStyleSheet
type IStyleSheet = interface
Public Interface IStyleSheet

Przykłady

Poniższy przykład kodu używa Header implementacji IStyleSheet programu do programowego tworzenia nowej reguły stylu i rejestrowania obiektu niestandardowego Style .

W pierwszej części przykładu tworzony jest obiekt niestandardowy Style , labelStylea następnie zarejestrowany dla bieżącej lokalizacji (URL). Następnie etykieta label1 wywołuje metodę MergeStyle , aby labelStyle styl został zastosowany do label1 etykiety.

Druga część przykładu definiuje inny obiekt niestandardowy Style i bodyStyleustawia jego właściwości w celu utworzenia nowej reguły stylu.

Uwaga

Ta klasa jest przeznaczona głównie dla deweloperów, którzy chcą utworzyć implementację niestandardową. W tym przykładzie pokazano implementację udostępnioną przez .NET Framework.

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="istylesheetcs.aspx.cs" Inherits="istylesheetcs" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<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>
        <br /><br />
        <asp:Label 
          id="label2" 
          runat="server">
        </asp:Label>
    </form>
  </body>
</html>
<%@ Page Language="VB" AutoEventWireup="true" CodeFile="istylesheetvb.aspx.vb" Inherits="istylesheetvb" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<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>
        <br /><br />
        <asp:Label 
          id="label2" 
          runat="server">
        </asp:Label>
    </form>
  </body>
</html>

Poniżej znajduje się plik z tyłu kodu dla strony sieci Web w poprzednim przykładzie.

public partial class istylesheetcs : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        // 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.";

        // Create a Style object for the <BODY> section of the Web page.
        Style bodyStyle = new Style();

        bodyStyle.ForeColor = System.Drawing.Color.Blue;
        bodyStyle.BackColor = System.Drawing.Color.LightGray;

        // Add the style to the header of the current page.
        Page.Header.StyleSheet.CreateStyleRule(bodyStyle, null, "BODY");

        // Add text to the label2 control to see the label without 
        // the labelStyle applied to it.  
        label2.Text = "This is what the bodyStyle looks like.";
    }
}

Uwagi

Klasy implementujące ten interfejs mogą używać go do obsługi tworzenia reguł stylów.

Aby dostosować sposób tworzenia i rejestrowania kaskadowych arkuszy stylów, należy utworzyć klasę, która implementuje ten interfejs.

Klasa HtmlHead implementuje ten interfejs do użycia przez ASP.NET za pośrednictwem Header właściwości .

Uwaga

Dodawanie lub modyfikowanie stylów lub reguł stylu programowo podczas asynchronicznych poświadczeń zwrotnych 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 Ajax).

Metody

CreateStyleRule(Style, IUrlResolutionService, String)

W przypadku implementacji przez klasę tworzy regułę stylu dla określonego typu elementu języka dokumentu lub selektora.

RegisterStyle(Style, IUrlResolutionService)

Po zaimplementowaniu przez klasę dodaje nową regułę stylu do osadzonego arkusza stylów w <head> sekcji strony sieci Web.

Dotyczy

Zobacz też