IStyleSheet Интерфейс

Определение

Определяет методы, которые необходимо реализовать классу для создания правил стиля.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

Примеры

В следующем примере кода используется Header реализация метода IStyleSheet , чтобы продемонстрировать программное создание нового правила стиля и регистрацию пользовательского 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.

В первой части примера создается пользовательский Style labelStyleобъект, который затем регистрируется для текущего расположения (URL-адреса).In the first part of the example, a custom Style object, labelStyle, is created and then registered for the current location (URL). Затем метка вызывает метод, labelStyle чтобы стиль применялся к label1 метке. MergeStyle label1Then the label1 label calls the MergeStyle method so that the labelStyle style is applied to the label1 label.

Во второй части примера определяется другой пользовательский Style объект, bodyStyleи устанавливаются его свойства для создания нового правила стиля.The second part of the example defines another custom Style object, bodyStyle,and sets its properties to create a new style rule.

Примечание

Этот класс предназначен главным образом для разработчиков, желающих создать пользовательскую реализацию.This class is intended primarily for developers that want to create a custom implementation. В этом примере демонстрируется реализация, предоставляемая .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>

Ниже приведен файл кода программной части для веб-страницы в предыдущем примере.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.";
    }
}

Комментарии

Классы, реализующие этот интерфейс, могут использовать его для поддержки создания правил стилей.Classes that implement this interface can use it to support the creation of style rules.

Чтобы настроить способ создания и регистрации каскадных таблиц стилей, необходимо создать класс, реализующий этот интерфейс.To customize the way cascading style sheets are created and registered, you must create a class that implements this interface.

Класс реализует этот интерфейс для использования методом ASP.NET Header через свойство. HtmlHeadThe HtmlHead class implements this interface for use by ASP.NET through the Header property.

Примечание

Программное добавление или изменение стилей или правил стилей во время асинхронных обратных передач не поддерживается.Adding or modifying styles or style rules programmatically during asynchronous postbacks is not supported. При добавлении возможностей AJAX на веб-страницу ASP.NET асинхронные обратные передачи обновляют области страницы без обновления всей страницы.When you add AJAX capabilities to an ASP.NET Web page, asynchronous postbacks update regions of the page without updating the whole page. Дополнительные сведения см. в статье Общие сведения о Microsoft AJAX.For more information, see Microsoft Ajax Overview.

Методы

CreateStyleRule(Style, IUrlResolutionService, String)

При реализации классом, добавляется новое правило стиля к указанному типу элемента языка документа, или селектору.When implemented by a class, creates a style rule for the specified document language element type, or selector.

RegisterStyle(Style, IUrlResolutionService)

При реализации классом добавляется новое правило стиля к внедренной таблице стилей в разделе <head> веб-страницы.When implemented by a class, adds a new style rule to the embedded style sheet in the <head> section of a Web page.

Применяется к

Дополнительно