ASP.Net中利用CSS实现多界面两法

时间:2008-10-07 12:18:58  来源:第二电脑网上收集  作者:

  第二电脑网导读: <script language="c#" runat="server">   public void page_load(Object obj,EventArgs e)   {   //创建服务器端控件.   //指定的标记"LINK"初始化此类的新实例.   HtmlGenericControl objLink=new HtmlGenericControl("LINK");   o...
  正文: 通过使页面动态加载不同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/ target=_blank class=infotextkey>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".

ASP.Net中利用CSS实现多界面两法》由第二电脑网原创提供,转载请注明:http://www.002pc.com/master/College/Programming/ASP/2008-10-07/3370.html


关键字:

关于《ASP.Net中利用CSS实现多界面两法》文章的评论

站内搜索: 高级搜索

热门搜索: Windows style 系统 tr IP QQ CPU 安装 function 注册 if td