上一篇:Questioning C# (一) >>
用C#代码动态改变页面样式
但在实际开发过程中,让开发人员一个个地设置控件的CssClass属性,不仅繁琐,而且容易出错,更头疼的是,还可能造成维护上的麻烦。
下面的代码段演示了一种在实际应用中取得良好效果的解决办法,希望能起到抛砖引玉的效果。基于这样的思路,相信大家可以开发出更多的应用,如实现简单的SKIN功能等。
代码如下。使用方法就是在每个.ASPX的Page_Load()方法里调用LoadPageCSS ()即可。
public void LoadPageCSS (System.Web.UI.Page vPage)
{
if (!vPage.IsPostBack)
{
SetControlsCSS (vPage.Controls);
}
}
private void SetControlsCSS (System.Web.UI.ControlCollection vControls)
{
for (int i=0; i<vControls.Count; i++)
{
System.Web.UI.Control vControl = vControls[i];
string vControlName = vControl.GetType().Name;
switch (vControlName)
{
case "TextBox":
TextBox_CSS ((TextBox) vControl);
break;
case "RadioButtonList":
RadioButtonList_CSS ((RadioButtonList) vControl);
break;
case "DropDownList":
DropDownList_CSS ((DropDownList) vControl);
break;
case "Button":
Button_CSS ((Button) vControl);
break;
case "DataGrid":
DataGrid_CSS ((DataGrid) vControl);
break;
/// 更多的控件类型及其处理方法
/// ....
/// ...
}
if (vControl.Controls.Count > 0)
{
SetControlsCSS (vControl.Controls);
}
}
}
private void RadioButtonList_CSS(RadioButtonList vRdoList)
{
vRdoList.CssClass ="RadioButtonList_show";
}
下一篇:用C#去除代码的SourceSafe管理(续篇) >>
相关文章:
- · 设计模式c#语言描述——合成(Composite)模式
- · An Intro to Constructors in C#
- · 巧用头脑思考,提高软件运行效率-浅谈程序算法
- · MapX 控件在C# 中的应用
- · 设计模式c#语言描述——适配器模式
- · 设计模式c#语言描述——建造者模式
- · 中英文语音合成与中文语音识别技术在c#中的应用(二)
- · 中英文语音合成与中文语音识别技术在c#中的应用(一)
- · 通过C#实现集合类纵览.NET Collections及相关技术
- · c#中的反射
- · 在C#中操作XML
- · C#—非对称加密:加密文件
- · c#中的接口
- · Dot Net的调试 - 2
- · C#中的事件
- · Dot Net的调试 - 1
- · C#中使用Spread6.0全攻略
- · 在.NET客户端程序中应用多线程
- · C# Idioms: Safely方法
- · C# Idioms: Enum还是Enum Class(枚举类)
- · c#自定义控件开发实例(2)
- · c#自定义控件开发实例(1)
- · C#---非对称加密的一个程序
- · C# sqlserver2000
- · 用C#编写发手机中文短信息
- · C# 多网卡 Server Listen
- · 生成魔方阵(周记05-03)
- · 设计模式C#描述——单例与多例模式
- · 设计模式C#描述——抽象工厂模式
- · 设计模式C#描述之——简单工厂模式
- · C# 2.0 之 static class[2]
- · C# 2.0 之 partial[1]
- · 使用C#获得系统信息
- · C#线索二叉树
- · 将Byte数组转化为String
- · c#接简单数据库操作类
- · Csharp+Asp.net系列教程(一)
- · 击鼓传花——轮询式错误处理机制的设计与实现(三)
