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

ASP.NET
asp.net 使用Silverlight操作ASPNETDB数据库
ASP.NET 前后台调用方法
ASP.NET中等安全模式的一些经验分享
asp.net 打印控件使用方法
网站开发技术:ASP.NET 2.0搭建网站
ASP.NET实例教程:创建数据透视表
ASP.NET 4进行SEO优化提高网站排名和权重
ASP.NET实例教程:订阅 GeoRSS 订阅源
ASP.NET页面间数据传递的9种方法
ASP.NET教程:网页表单多个按钮完成不同功能
Asp.net的服务器推技术 (Server Push)
asp.net 无刷新附件上传实现方法
ASP.NET 定制简单的错误处理页面实现代码
c# 在WebBrowser中用SendMessage模拟鼠标点击
asp.net 表单验证新思路
.NET从优酷专辑中采集所有视频及信息(VB.NET代码)
VS2005 水晶报表在时部署时遇到的问题
ASP.NET 输出图片简单代码
一天精通asp.net的学习经验小结
DataGridView中绑定DataTable数据及相关操作实现代码

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 62 ::
收藏到网摘: 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"。