Sdílet prostřednictvím


IStyleSheet Rozhraní

Definice

Definuje metody, které musí třída implementovat, aby podporovala vytváření pravidel stylu.

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

Příklady

Následující příklad kódu používá implementaci HeaderIStyleSheet k předvedení programového vytvoření nového pravidla stylu a registraci vlastního Style objektu.

V první části příkladu se vytvoří vlastní Style objekt labelStyle, který se zaregistruje pro aktuální umístění (URL). label1 Potom popisek zavolá metodu MergeStyle , aby se labelStyle styl použil na label1 popisek.

Druhá část příkladu definuje jiný vlastní Style objekt bodyStyle, a nastaví jeho vlastnosti pro vytvoření nového pravidla stylu.

Poznámka

Tato třída je určena především pro vývojáře, kteří chtějí vytvořit vlastní implementaci. Tento příklad ukazuje implementaci poskytovanou rozhraním .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>

Následuje soubor s kódem na pozadí pro webovou stránku v předchozím příkladu.

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.";
    }
}

Poznámky

Třídy, které implementují toto rozhraní, jej mohou použít k podpoře vytváření pravidel stylu.

Chcete-li přizpůsobit způsob vytváření a registrace šablon stylů CSS, musíte vytvořit třídu, která implementuje toto rozhraní.

Třída HtmlHead implementuje toto rozhraní pro použití ASP.NET prostřednictvím Header vlastnosti .

Poznámka

Přidávání nebo úpravy stylů nebo pravidel stylu prostřednictvím kódu programu během asynchronního postbacku není podporováno. Když na webovou stránku ASP.NET přidáte funkce AJAX, asynchronní zpětné odeslání aktualizuje oblasti stránky bez aktualizace celé stránky. Další informace najdete v tématu Microsoft Ajax – přehled.

Metody

CreateStyleRule(Style, IUrlResolutionService, String)

Při implementaci třídou vytvoří pravidlo stylu pro zadaný typ prvku jazyka dokumentu nebo selektor.

RegisterStyle(Style, IUrlResolutionService)

Při implementaci třídou přidá nové pravidlo stylu do vložené šablony stylů v <head> oddílu webové stránky.

Platí pro

Viz také