IStyleSheet Interfejs

Definicja

Definiuje metody, które Klasa musi zaimplementować w celu obsługi tworzenia reguł stylu.Defines the methods that a class must implement in order to support the creation of style rules.

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

Przykłady

Poniższy przykład kodu używa implementacji, Header IStyleSheet Aby zademonstrować programowe tworzenie nowej reguły stylu i rejestrowanie obiektu niestandardowego Style .The following code example uses the Header implementation of IStyleSheet to demonstrate programmatically creating a new style rule and registering the custom Style object.

W pierwszej części przykładu Style zostanie utworzony obiekt niestandardowy, labelStyle a następnie zarejestrowany dla bieżącej lokalizacji (URL).In the first part of the example, a custom Style object, labelStyle, is created and then registered for the current location (URL). Następnie label1 etykieta wywołuje metodę, MergeStyle Aby labelStyle styl został zastosowany do label1 etykiety.Then the label1 label calls the MergeStyle method so that the labelStyle style is applied to the label1 label.

Druga część przykładu definiuje inny Style obiekt niestandardowy, bodyStyle i ustawia jego właściwości w celu utworzenia nowej reguły stylu.The second part of the example defines another custom Style object, bodyStyle,and sets its properties to create a new style rule.

Uwaga

Ta klasa jest przeznaczona głównie dla deweloperów, którzy chcą utworzyć implementację niestandardową.This class is intended primarily for developers that want to create a custom implementation. W tym przykładzie przedstawiono implementację dostarczoną przez .NET Framework.This example demonstrates the implementation provided by the .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 związany z kodem dla strony sieci Web w poprzednim przykładzie.The following is the code-behind file for the Web page in the preceding example.

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ł stylu.Classes that implement this interface can use it to support the creation of style rules.

Aby dostosować sposób tworzenia i rejestrowania kaskadowych arkuszy stylów, należy utworzyć klasę, która implementuje ten interfejs.To customize the way cascading style sheets are created and registered, you must create a class that implements this interface.

HtmlHeadKlasa implementuje ten interfejs do użycia przez ASP.NET przez Header Właściwość.The HtmlHead class implements this interface for use by ASP.NET through the Header property.

Uwaga

Dodawanie lub modyfikowanie reguł stylów lub stylów w programie programistycznym podczas asynchronicznego ogłaszania zwrotnego nie jest obsługiwane.Adding or modifying styles or style rules programmatically during asynchronous postbacks is not supported. Po dodaniu funkcji AJAX do strony sieci Web ASP.NET asynchroniczne zwroty ogłaszają regiony strony bez aktualizowania całej strony.When you add AJAX capabilities to an ASP.NET Web page, asynchronous postbacks update regions of the page without updating the whole page. Aby uzyskać więcej informacji, zobacz Omówienie technologii Microsoft Ajax.For more information, see Microsoft Ajax Overview.

Metody

CreateStyleRule(Style, IUrlResolutionService, String)

W przypadku implementacji przez klasę, program tworzy regułę stylu dla określonego typu elementu języka dokumentu lub selektora.When implemented by a class, creates a style rule for the specified document language element type, or selector.

RegisterStyle(Style, IUrlResolutionService)

Po zaimplementowaniu przez klasę, dodaje nową regułę stylu do osadzonego arkusza stylów w <head> sekcji strony sieci Web.When implemented by a class, adds a new style rule to the embedded style sheet in the <head> section of a Web page.

Dotyczy

Zobacz też