IStyleSheet Gränssnitt
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Definierar de metoder som en klass måste implementera för att kunna skapa formatregler.
public interface class IStyleSheet
public interface IStyleSheet
type IStyleSheet = interface
Public Interface IStyleSheet
Exempel
I följande kodexempel används implementeringen Header av IStyleSheet för att visa hur du programmatiskt skapar en ny formatregel och registrerar det anpassade Style objektet.
I den första delen av exemplet skapas ett anpassat Style objekt, labelStyle, och registreras sedan för den aktuella platsen (URL).
label1 Sedan anropar MergeStyle etiketten metoden så att labelStyle formatet tillämpas på label1 etiketten.
Den andra delen av exemplet definierar ett annat anpassat Style objekt och bodyStyleanger dess egenskaper för att skapa en ny formatregel.
Note
Den här klassen är främst avsedd för utvecklare som vill skapa en anpassad implementering. Det här exemplet visar implementeringen som tillhandahålls av .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>
Följande är filen bakom koden för webbsidan i föregående exempel.
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.";
}
}
Kommentarer
Klasser som implementerar det här gränssnittet kan använda det för att skapa formatregler.
Om du vill anpassa hur sammanhängande formatmallar skapas och registreras måste du skapa en klass som implementerar det här gränssnittet.
Klassen HtmlHead implementerar det här gränssnittet för användning av ASP.NET via egenskapen Header.
Note
Det går inte att lägga till eller ändra formatmallar eller formatregler programmatiskt under asynkrona återkopplingar. När du lägger till AJAX-funktioner på en ASP.NET webbsida uppdaterar asynkrona postbacks sidans regioner utan att uppdatera hela sidan. Mer information finns i Microsoft Ajax-översikt.
Metoder
| Name | Description |
|---|---|
| CreateStyleRule(Style, IUrlResolutionService, String) |
När den implementeras av en klass skapar du en formatregel för den angivna elementtypen för dokumentspråk eller väljare. |
| RegisterStyle(Style, IUrlResolutionService) |
När den implementeras av en klass lägger du till en ny formatregel i den inbäddade formatmallen |