IStyleSheet.CreateStyleRule(Style, IUrlResolutionService, String) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
由类实现时,它为指定的文档语言元素类型或选择器创建样式规则。
public:
void CreateStyleRule(System::Web::UI::WebControls::Style ^ style, System::Web::UI::IUrlResolutionService ^ urlResolver, System::String ^ selector);
public void CreateStyleRule (System.Web.UI.WebControls.Style style, System.Web.UI.IUrlResolutionService urlResolver, string selector);
abstract member CreateStyleRule : System.Web.UI.WebControls.Style * System.Web.UI.IUrlResolutionService * string -> unit
Public Sub CreateStyleRule (style As Style, urlResolver As IUrlResolutionService, selector As String)
参数
- style
- Style
要添加到嵌入式样式表中的样式规则。
- urlResolver
- IUrlResolutionService
一个实现了 IUrlResolutionService 的对象,它包含当前位置 (URL) 的上下文信息。
- selector
- String
HTML 页中受到样式影响的部分。
示例
下面的代码示例使用 的 HeaderIStyleSheet 实现来演示如何定义新的 Style 对象 bodyStyle
。 然后 bodyStyle
,通过调用 CreateStyleRule将 添加到当前 URL。
<%@ 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 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, this, "BODY");
// Add text to the label2 control to see the style rules applied to it.
label1.Text = "This is what the bodyStyle 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 for the <body> section of the Web page.
Dim bodyStyle As Style = 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, me, "BODY")
' Add text to the label2 control to see the style rules applied to it.
label1.Text = "This is what the bodyStyle 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>
注解
方法 CreateStyleRule 为指定的选择器创建样式规则。 可以为同一选择器创建多个样式规则。
如果 urlResolver
设置为 null
,则使用当前 Page 实例的 URL。
注意
不支持在异步回发期间以编程方式添加或修改样式或样式规则。 将 AJAX 功能添加到 ASP.NET 网页时,异步回发会更新页面的区域,而不会更新整个页面。 有关详细信息,请参阅 Microsoft Ajax 概述。