IStyleSheet.RegisterStyle(Style, IUrlResolutionService) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Při implementaci třídou přidá nové pravidlo stylu do vložené šablony stylů v <head>
oddílu webové stránky.
public:
void RegisterStyle(System::Web::UI::WebControls::Style ^ style, System::Web::UI::IUrlResolutionService ^ urlResolver);
public void RegisterStyle (System.Web.UI.WebControls.Style style, System.Web.UI.IUrlResolutionService urlResolver);
abstract member RegisterStyle : System.Web.UI.WebControls.Style * System.Web.UI.IUrlResolutionService -> unit
Public Sub RegisterStyle (style As Style, urlResolver As IUrlResolutionService)
Parametry
- style
- Style
Pravidlo stylu, které se má přidat do vložené šablony stylů.
- urlResolver
- IUrlResolutionService
- IUrlResolutionServiceimplementovaný objekt, který obsahuje kontextové informace pro aktuální umístění (URL).
Příklady
Následující příklad kódu používá implementaci HeaderIStyleSheet k předvedení vytvoření vlastního Style objektu labelStyle
a jeho následné registraci pro aktuální umístění (URL).
label1
Potom popisek zavolá metodu MergeStyle , aby se labelStyle
styl použil na label1
popisek.
<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
void Page_Load(object sender, EventArgs e)
{
if (Page.Header != null)
{
// 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.";
}
}
</script>
<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>
</form>
</body>
</html>
<%@ page language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
If Not Page.Header Is Nothing Then
' Create a Style object to hold style rules to apply to a Label control.
Dim labelStyle As Style = 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, Nothing)
' Merge the labelCssStyle style with the label1 control's
' style settings.
label1.MergeStyle(labelStyle)
label1.Text = "This is what the labelCssStyle looks like."
End If
End Sub
</script>
<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>
</form>
</body>
</html>
Poznámky
Tato metoda přidá nové pravidlo stylu a RegisteredCssClass název vlastnosti do vložené šablony stylů v rámci <head>
oddílu Page objektu a přidruží pravidlo k automaticky generovanému názvu stylu. Objekt se Style vykreslí pomocí zadaného urlResolver
parametru.
Pokud urlResolver
je nastavená hodnota null
, použije se adresa URL aktuálního Page .
Style Pokud je objekt už zaregistrovaný, nepřidá se vícekrát.
Poznámka
Přidávání nebo úpravy stylů 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.