zoukankan      html  css  js  c++  java
  • ASP.Net中利用CSS实现多界面两法

    通过使页面动态加载不同CSS实现多界面 (类似于这个blog)
      方法一:
    %@page language="C#"%>
    %@import namespace="System.Data"%>
    <script language="c#" runat="server">
    public void page_load(Object obj,EventArgs e)
    {
    //创建服务器端控件.
    //指定的标记"LINK"初始化此类的新实例.
    HtmlGenericControl objLink=new HtmlGenericControl("LINK");
    objLink.ID=ID;
    objLink.Attributes["rel"]="stylesheet";
    objLink.Attributes["type"]="text/css";
    objLink.Attributes["href"]="portal.css";

    //此控件不产生任何可见输出,仅作为其他控件的容器,可在其中添加,插入或移除控件.
    MyCSS.Controls.Add(objLink);
    }
    </script>
    <html>
    <head>
    <title>c#</title>
    <asp:placeholder id="MyCSS" runat="server"></asp:placeholder>
    </head>
    <body bgColor="#ffcc66" style="FONT:9pt">
    <form runat="server">

    </form>
    </body>
    </html>
      ==========================================
      通过动态设置页面所有同类型控件的样式来该变界面:

      方法二:

      可以通过改变WEB控件的CssClass属性,可方便地设置和修改控件的样式。
      但在实际开发过程中,一个个地设置控件的CssClass属性,非常繁琐,所以此思路应用不广.
      但下面的代码段演示了一次性改变页面所有同类型控件的样式的方法,可以实现简单的SKIN等功能。

    代码如下:
    public void page_load(Object obj,EventArgs e)
    {
    if(!Page.IsPostBack){
    //为页面的所有控件设置样式.
    SetCSS(Page.Controls);
    }
    }
    private void SetCSS(System.Web.UI.ControlCollection vControls)
    {
    for(int i=0;i<vControls.Count;i++)
    {
    System.Web.UI.Control vControl=vControls[i];

    //得到控件的类型
    //可增加控件类型及相应处理方法
    string PType=vControl.GetType().Name;
    switch (PType)
    {
    case "TextBox":
    TextBox_CSS ((TextBox) vControl);
    break;
    case "Button":
    //Button_CSS ((Button) vControl);
    break;
    case "DataGrid":
    //DataGrid_CSS ((DataGrid) vControl);
    break;
    }
    if(vControl.Controls.Count>0)
    SetCSS(vControl.Controls);
    }
    }


    private void TextBox_CSS(TextBox tb){
    tb.CssClass="TextBox_show";
    }

    <form runat="server">
    <asp:textbox id="Search1" runat="server"/>
    <asp:textbox id="Search2" CssClass="INPUT" runat="server"/>
    </form>

      运行后,查看页面源码.可发现文本框的样式已统一修改为"TextBox_show".

  • 相关阅读:
    ural(Timus) 1019 Line Painting
    ACMICPC Live Archive 2031 Dance Dance Revolution
    poj 3321 Apple Tree
    其他OJ 树型DP 选课
    poj 3548 Restoring the digits
    ACMICPC Live Archive 3031 Cable TV Network
    递归循环获取指定节点下面的所有子节点
    手动触发asp.net页面验证控件事件
    子级Repeater获取父级Repeater绑定项的值
    没有列名的数据绑定
  • 原文地址:https://www.cnblogs.com/SALIN/p/618081.html
Copyright © 2011-2022 走看看