后台动态加载文件代码:
//假设css文件:TestCss.css #region 动态加载css文件 public void AddCss() { HtmlGenericControl _CssFile = new HtmlGenericControl("link"); _CssFile.ID = "CssFile"; _CssFile.Attributes["rel"] = "stylesheet"; _CssFile.Attributes["type"] = "text/css"; _CssFile.Attributes["href"] = "/Styles/TestCss.css"; if (this.FindControl(_CssFile.ID) == null) { this.Page.Header.Controls.Add(_CssFile); } } #endregion 动态加载css文件
换肤方案
1) 写个类(Page_Parent.cs) 动态加载样式文件
2) 所有页面继承Page_Parent.cs类
Page_Parent.cs类
using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI.HtmlControls;namespace Test{ public class Page_Parent: System.Web.UI.Page { public Page_Parent() { this.Load += Page_Parent_Load; this.Error += Page_Parent_Error; } ////// 捕捉未处理的页面错误 /// /// /// private void Page_Parent_Error(object sender, EventArgs e) { throw new NotImplementedException(); } private void Page_Parent_Load(object sender, EventArgs e) { AddCss(); } //假设css文件:TestCss.css #region 动态加载css文件 public void AddCss() { HtmlGenericControl _CssFile = new HtmlGenericControl("link"); _CssFile.ID = "CssFile"; _CssFile.Attributes["rel"] = "stylesheet"; _CssFile.Attributes["type"] = "text/css"; _CssFile.Attributes["href"] = "/Styles/TestCss.css"; if (this.FindControl(_CssFile.ID) == null) { this.Page.Header.Controls.Add(_CssFile); } } #endregion 动态加载css文件 }}
测试页面Web_Test.aspx:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Web_Test.aspx.cs" Inherits="Web.Web_Test" %>
using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;namespace Web{ public partial class Web_Test : Page_Parent { protected void Page_Load(object sender, EventArgs e) { } }}