Freigeben über


IStyleSheet Schnittstelle

Definition

Definiert die Methoden, die eine Klasse implementieren muss, um das Erstellen von Formatierungsregeln zu unterstützen.

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

Beispiele

Im folgenden Codebeispiel wird die Implementierung von IStyleSheet verwendet, um das Header programmgesteuerte Erstellen einer neuen Stilregel und die Registrierung des benutzerdefinierten Objekts zu veranschaulichenStyle.

Im ersten Teil des Beispiels wird ein benutzerdefiniertes Style Objekt ( labelStyle) erstellt und dann für den aktuellen Speicherort (URL) registriert. Anschließend ruft die label1 Bezeichnung die MergeStyle -Methode auf, sodass die labelStyle Formatvorlage auf die label1 Bezeichnung angewendet wird.

Im zweiten Teil des Beispiels wird ein anderes benutzerdefiniertes Style Objekt definiert, und seine Eigenschaften werden so festgelegt, bodyStyledass eine neue Stilregel erstellt wird.

Hinweis

Diese Klasse richtet sich in erster Linie an Entwickler, die eine benutzerdefinierte Implementierung erstellen möchten. In diesem Beispiel wird die von .NET Framework bereitgestellte Implementierung veranschaulicht.

<%@ 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>

Es folgt die CodeBehind-Datei für die Webseite im vorherigen Beispiel.

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

Hinweise

Klassen, die diese Schnittstelle implementieren, können sie verwenden, um die Erstellung von Stilregeln zu unterstützen.

Um die Art und Weise anzupassen, wie cascading Stylesheets erstellt und registriert werden, müssen Sie eine Klasse erstellen, die diese Schnittstelle implementiert.

Die HtmlHead -Klasse implementiert diese Schnittstelle zur Verwendung durch ASP.NET über die Header -Eigenschaft.

Hinweis

Das programmgesteuerte Hinzufügen oder Ändern von Formatvorlagen oder Formatvorlagenregeln während asynchroner Postbacks wird nicht unterstützt. Wenn Sie einer ASP.NET Webseite AJAX-Funktionen hinzufügen, werden asynchrone Postbacks die Bereiche der Seite aktualisieren, ohne die gesamte Seite zu aktualisieren. Weitere Informationen finden Sie unter Übersicht über Microsoft Ajax.

Methoden

CreateStyleRule(Style, IUrlResolutionService, String)

Bei Implementierung durch eine Klasse wird für den angegebenen Dokumentsprachelementtyp bzw. die entsprechende Auswahl eine Formatierungsregel erstellt.

RegisterStyle(Style, IUrlResolutionService)

Bei Implementierung durch eine Klasse wird dem eingebetteten Stylesheet im <head>-Abschnitt einer Webseite eine neue Formatierungsregel hinzugefügt.

Gilt für:

Weitere Informationen