在ASP.Net两种利用CSS实现多界面的方法
点击次数:15 次 发布日期:2008-11-27 02:17:49 作者:源代码网
|
源代码网推荐 通过使页面动态加载不同CSS实现多界面 源代码网推荐 源代码网推荐 方法一: 源代码网推荐 源代码网推荐 <%@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". 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 源代码网供稿. |
