当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > ASP.Net中利用CSS实现多界面两法

ASP.NET
asp.net GridView控件中模板列CheckBox全选、反选、取消
asp.net GridView 删除时弹出确认对话框(包括内容提示)
asp.net DropDownList 三级联动下拉菜单实现代码
asp DataTable添加列和行的三种方法
Asp.net 页面调用javascript变量的值
asp.net 长文章通过设定的行数分页
asp.net 定时间点执行任务的简易解决办法
asp.net 页面延时五秒,跳转到另外的页面
asp.net 动态输出透明gif图片
asp.net DataList与Repeater用法区别
asp.net Javascript获取CheckBoxList的value
asp.net程序在调式和发布之间图片路径问题的解决方法
asp.net下生成英文字符数字验证码的代码
asp.net 页面版文本框智能提示JSCode (升级版)
ASP.NET URL伪静态重写实现方法
ASP.NET 2.0 中Forms安全认证
asp.net 动态添加多个用户控件
asp.net Repeater显示父子表数据,无闪烁
asp.net 无法获取的内部内容,因为该内容不是文本 的解决方法
asp.net GridView排序简单实现

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 65 ::
收藏到网摘: n/a

通过使页面动态加载不同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"。