用C#代码动态改变页面样式

转载 2004年09月16日 14:10:00

Web系统开发过程中,采用CSS 增强和美化页面样式已经成了一道标准工序。在Visual Studio .NET 环境下开发BS系统,可以通过设置WEB 控件的CssClass属性,方便地设置和修改控件的样式。<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

但在实际开发过程中,让开发人员一个个地设置控件的CssClass属性,不仅繁琐,而且容易出错,更头疼的是,还可能造成维护上的麻烦。

下面的代码段演示了一种在实际应用中取得良好效果的解决办法,希望能起到抛砖引玉的效果。基于这样的思路,相信大家可以开发出更多的应用,如实现简单的SKIN功能等。

代码如下。使用方法就是在每个.ASPXPage_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
     { 
        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#代码动态改变页面样式

在Web系统开发过程中,采用CSS 增强和美化页面样式已经成了一道标准‘工序’。在Visual Studio .NET 环境下开发BS系统,可以通过设置WEB 控件的CssClass属性,方便地设置和...
  • luoboqingcai
  • luoboqingcai
  • 2004年09月20日 11:12
  • 608

用C#代码动态改变页面样式

用C#代码动态改变页...
  • luanshf
  • luanshf
  • 2007年03月17日 12:46
  • 442

【WPF】C#代码动态改变控件的样式

C#引入样式
  • qq_18995513
  • qq_18995513
  • 2017年01月19日 11:30
  • 1903

用javascript动态改变样式

要做一个动态更改页面样式的东东 ,用到javascript这句:document.getElementById("ID").style.cssText=str;费了九牛二虎的劲,终于做出来了。最后出来...
  • smile0324
  • smile0324
  • 2007年09月20日 10:36
  • 529

JavaScript--动态更改CSS样式

JavaScript太强大了,虽然是弱语言,不过一点都不输于Java 可以自行设置随机数,来动态更改CSS样式,每一次都是不一样的感觉,这个小功能挺实用的 JavaScript修改...
  • k183000860
  • k183000860
  • 2015年07月31日 22:56
  • 950

ionic3动态设置样式

吾生也有涯,而知也无涯。以有涯随无涯,殆已!
  • Moonlighting_
  • Moonlighting_
  • 2017年09月07日 15:19
  • 1428

android 自定义VIew 动态在页面中改变页面的布局

首先明确这几个高度的的意义: headParams.topMargin headParams  是MarginLayoutParams的对象,这个的意义是组件离父窗体上部的距离,就是子组件...
  • xushuangshuang1
  • xushuangshuang1
  • 2015年04月12日 09:30
  • 314

Wpf 动态添加控件设置样式

新公司主要用wpf做项目,之前也没有接触过这类东西,经过一周的学习发现wpf的页面布局,样式设置和网页设计差不多。 两者都有样式文件可以为控件统一设置样式,就连优先级都差不多,发现还挺有意思。下面进...
  • xingxing513234072
  • xingxing513234072
  • 2013年05月17日 09:51
  • 5768

dataGridView改变单元格内的样式。

所有行: dataGridView1.RowsDefaultCellStyle.Font = new Font("宋体", 9, FontStyle.Strikeout);dat...
  • sminhrosunny
  • sminhrosunny
  • 2011年05月24日 09:38
  • 2070

javascript+css无刷新实现页面样式的更换

如果要更换页面的主题,只能是放在Page_PreInit事件里,而这个事件一般都要经过刷新才会执行,所以这就导致效率下降,用户体验也会跟着下降。 下面我将介绍一下关于Javascript+CSS的解...
  • neubuffer
  • neubuffer
  • 2013年11月23日 14:34
  • 1445
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章: 用C#代码动态改变页面样式
举报原因:
原因补充:

(最多只允许输入30个字)