IStyleSheet Interface

Definitie

Definieert de methoden die een klasse moet implementeren om het maken van stijlregels te ondersteunen.

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

Voorbeelden

In het volgende codevoorbeeld wordt de Header implementatie gebruikt om IStyleSheet programmatisch een nieuwe stijlregel te maken en het aangepaste Style object te registreren.

In het eerste deel van het voorbeeld wordt een aangepast Style object gemaakt labelStyleen vervolgens geregistreerd voor de huidige locatie (URL). Vervolgens roept het label1 label de MergeStyle methode aan, zodat de labelStyle stijl wordt toegepast op het label1 label.

Het tweede deel van het voorbeeld definieert een ander aangepast Style object bodyStyleen stelt de eigenschappen in om een nieuwe stijlregel te maken.

Note

Deze klasse is voornamelijk bedoeld voor ontwikkelaars die een aangepaste implementatie willen maken. In dit voorbeeld ziet u de implementatie van het .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>

Hier volgt het code-behind-bestand voor de webpagina in het voorgaande voorbeeld.

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

Opmerkingen

Klassen die deze interface implementeren, kunnen deze gebruiken om het maken van stijlregels te ondersteunen.

Als u de manier wilt aanpassen waarop trapsgewijze opmaakmodellen worden gemaakt en geregistreerd, moet u een klasse maken waarmee deze interface wordt geïmplementeerd.

De klasse HtmlHead implementeert deze interface voor gebruik door ASP.NET via de eigenschap Header.

Note

Het programmatisch toevoegen of wijzigen van stijlen of stijlregels tijdens asynchrone postbacks wordt niet ondersteund. Wanneer u AJAX-mogelijkheden toevoegt aan een ASP.NET webpagina, worden asynchrone postbacks regio's van de pagina bijgewerkt zonder de hele pagina bij te werken. Zie Microsoft Ajax-overzicht voor meer informatie.

Methoden

Name Description
CreateStyleRule(Style, IUrlResolutionService, String)

Wanneer deze wordt geïmplementeerd door een klasse, maakt u een stijlregel voor het opgegeven type documenttaalelement of selector.

RegisterStyle(Style, IUrlResolutionService)

Wanneer deze wordt geïmplementeerd door een klasse, voegt u een nieuwe stijlregel toe aan het ingesloten opmaakmodel in de <head> sectie van een webpagina.

Van toepassing op

Zie ook