|
| 在Web系统开发过程中,采用CSS 增强和美化页面样式已经成了一道标准‘工序’。在Visual Studio .NET 环境下开发BS系统,可以通过设置WEB 控件的CssClass属性,方便地设置和修改控件的样式。 但在实际开发过程中,让开发人员一个个地设置控件的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"; }
|
一点意见:不服责任的说,可能这样处理的效率不高。不服责任的说是因为没有验证。