CssStyleCollection クラス
アセンブリ: System.Web (system.web.dll 内)


特定の HTML サーバー コントロールについて宣言されたスタイルは、そのコントロールを格納している Web フォーム ページが解析されるときにコレクションに追加されます。CSS プロパティは、ディクショナリ パターン API を使用して自動的に解析および公開されます。Style プロパティを使用して、サーバー コントロールの任意の CSS プロパティを操作できます。インデックス付きコレクション内の CSS プロパティのキーと値を使用するだけの簡単な操作です。

HtmlInputText サーバー コントロールに対して CssStyleCollection オブジェクトを反復処理するコード例を次に示します。Keys プロパティは、サーバー コントロールで宣言されているスタイル属性を決定するために使用され、属性名と属性値を Web フォーム ページ上の DataList オブジェクトにバインドします。
<%@ Page Language="VB" %> <%@ Import Namespace="System.Data" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <script runat="server"> Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Dim dt As New DataTable() Dim dr As DataRow dt.Columns.Add(New DataColumn("AttributeName", GetType(String))) dt.Columns.Add(New DataColumn("AttributeValue", GetType(String))) ' The Style property of the MyText control returns ' a CssStyleCollection object. Dim keys As IEnumerator = MyText.Style.Keys.GetEnumerator() While keys.MoveNext() Dim key As [String] = CType(keys.Current, [String]) dr = dt.NewRow() dr(0) = key dr(1) = MyText.Style(key) dt.Rows.Add(dr) End While Dim dv As New DataView(dt) MessageList.DataSource = dv MessageList.DataBind() End Sub </script> <html > <head runat="server"> <title>CssStyleCollection Example</title> </head> <body> <form id="form1" runat="server"> <div> <asp:DataList id="MessageList" runat="server"> <HeaderStyle Font-Bold="true"/> <HeaderTemplate> HtmlInputText control's CssStyleCollection </HeaderTemplate> <ItemTemplate> Attribute: <%# DataBinder.Eval(Container.DataItem, "AttributeName") %> , Value: <%# DataBinder.Eval(Container.DataItem, "AttributeValue") %> </ItemTemplate> </asp:DataList> <br> <input id="MyText" type="text" value="Type a value here." style="font: 14pt verdana;width:300;" runat="server"/> </div> </form> </body></html>
<%@ Page Language="C#" %> <%@ Import Namespace="System.Data" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <script runat="server"> protected void Page_Load(object sender, EventArgs e) { DataTable dt = new DataTable(); DataRow dr; dt.Columns.Add(new DataColumn("AttributeName", typeof(String))); dt.Columns.Add(new DataColumn("AttributeValue", typeof(String))); // The Style property of the MyText control returns // a CssStyleCollection object. IEnumerator keys = MyText.Style.Keys.GetEnumerator(); while (keys.MoveNext()) { String key = (String)keys.Current; dr = dt.NewRow(); dr[0] = key; dr[1] = MyText.Style[key]; dt.Rows.Add(dr); } DataView dv = new DataView(dt); MessageList.DataSource = dv; MessageList.DataBind(); } </script> <html > <head runat="server"> <title>CssStyleCollection Example</title> </head> <body> <form id="form1" runat="server"> <div> <asp:DataList id="MessageList" runat="server"> <HeaderStyle Font-Bold="true"/> <HeaderTemplate> HtmlInputText control's CssStyleCollection </HeaderTemplate> <ItemTemplate> Attribute: <%# DataBinder.Eval(Container.DataItem, "AttributeName") %> , Value: <%# DataBinder.Eval(Container.DataItem, "AttributeValue") %> </ItemTemplate> </asp:DataList> <br /> An input control with a style attribute: <br /> <input id="MyText" type="text" value="Type a value here." style="font: 14pt verdana;width:300;" runat="server"/> </div> </form> </body> </html>


System.Web.UI.CssStyleCollection


Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


- CssStyleCollection クラスのページへのリンク