IStyleSheet Schnittstelle
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
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, bodyStyle
dass 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 |