티스토리 뷰

💼 정보 ver1.0

CssStyleCollection.Keys 속성

James Wetzel 2011. 2. 8. 13:09

 

특정 HTML 서버 컨트롤의 CssStyleCollection 개체에 있는 모든 스타일에 대한 키 컬렉션을 가져옵니다.

다음 코드 예제에서는 HtmlInputText 서버 컨트롤에 대해 CssStyleCollection 컬렉션을 반복하는 방법을 보여 줍니다. Keys 속성은 서버 컨트롤에 선언된 스타일 특성을 확인한 다음 이 특성의 이름과 값을 Web Forms 페이지에 있는 DataList 개체에 바인딩하는 데 사용됩니다.

<%@ 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 xmlns="http://www.w3.org/1999/xhtml" >
<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>


protected void userRequestForm_LB_Click(object sender, EventArgs e)
        {
            bool divSwitch = false;
            System.Collections.IEnumerator keys = userRequestOfThema.Style.Keys.GetEnumerator();

            while (keys.MoveNext())
            {
                String key = (String)keys.Current;
                if (key.Equals("display") && userRequestOfThema.Style[key].ToString().Equals("none"))
                {
                    divSwitch = true;
                }
                if (key.Equals("display") && userRequestOfThema.Style[key].ToString().Equals("inline"))
                {
                    divSwitch = false;
                }
            }

            if (divSwitch)
            {
                userRequestOfThema.Style.Add("display", "inline");
            }
            else
            {
                userRequestOfThema.Style.Add("display", "none");
            }
        }

반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함