IStyleSheet.RegisterStyle(Style, IUrlResolutionService) Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Saat diimplementasikan oleh kelas, menambahkan aturan gaya baru ke lembar gaya yang disematkan di <head>
bagian halaman Web.
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)
Parameter
- style
- Style
Aturan gaya yang akan ditambahkan ke lembar gaya yang disematkan.
- urlResolver
- IUrlResolutionService
Objek IUrlResolutionServiceyang diimplementasikan yang berisi informasi konteks untuk lokasi (URL) saat ini.
Contoh
Contoh kode berikut menggunakan Header implementasi IStyleSheet untuk menunjukkan pembuatan objek kustom Style , labelStyle
, lalu mendaftarkannya untuk lokasi (URL) saat ini.
label1
Kemudian label memanggil MergeStyle metode sehingga labelStyle
gaya diterapkan ke label1
label.
<%@ 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>
Keterangan
Metode ini menambahkan aturan RegisteredCssClass gaya dan nama properti baru ke lembar gaya yang disematkan di dalam <head>
bagian Page objek, dan mengaitkan aturan dengan nama gaya yang dihasilkan secara otomatis. Objek Style dirender menggunakan parameter yang ditentukan urlResolver
.
Jika urlResolver
diatur ke null
, URL saat ini Page digunakan.
Style Jika objek sudah terdaftar, objek tidak ditambahkan beberapa kali.
Catatan
Menambahkan atau memodifikasi gaya secara terprogram selama postback asinkron tidak didukung. Saat Anda menambahkan kapabilitas AJAX ke halaman Web ASP.NET, postback asinkron memperbarui wilayah halaman tanpa memperbarui seluruh halaman. Untuk informasi selengkapnya, lihat Gambaran Umum Microsoft Ajax.