快速业务通道

ASP.NET动态加载主题示例

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-04-11

1.先制作两个主题Default和Blue

App_Themes\Default\Default.skin:

<asp:TextBox runat="server" BorderWidth="1px" BorderColor="Red" ForeColor="Red"></asp:TextBox>

App_Themes\Blue\Blue.skin:

<asp:TextBox runat="server" BorderWidth="1px" BorderColor="Blue" ForeColor="Blue"></asp:TextBox>

 

2.动态加载主题


Default.aspx:

<%@ Page Language="C#" AutoEventWireup="true" StylesheetTheme="Default"  CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>动态加载主题示例-Mzwu.Com</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:Button ID="Button1" runat="server" PostBackUrl="?theme=default" Text="应用主题一" />
        <asp:Button ID="Button2" runat="server" PostBackUrl="?theme=blue" Text="应用主题二" /><br /><br />
        <asp:TextBox ID="TextBox1" runat="server" BorderWidth="1px" BorderColor="Black" ForeColor="Black"></asp:TextBox><br />
    </div>
    </form>
</body>
</html>  

Default.aspx.cs:

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class _Default : System.Web.UI.Page
{
    protected void Page_PreInit(object sender, EventArgs e)
    {
        if (Request.QueryString["theme"] != null)
        {
            Page.Theme = Request.QueryString["theme"];
        }
    }

    protected void Page_Load(object sender, EventArgs e)
    {
        //
    }
}

ASP.NET主题说明

·一个主题通常包含皮肤文件、css文件和图片资源等;
·皮肤文件中定义的是服务器控件外观,css文件通常定义页面和普通html控件样式;
·皮肤可分为默认皮肤和命名皮肤,命名皮肤有SkinID属性,默认皮肤没有;
·皮肤文件中只允许出现控件外观相关属性的设置,设置非外观属性值将出错;
·主题下的css文件不需格外引用,自动应用到页面中,但要求页面上有<head runat="server"/>;
·样式设置优先级:Page指令的StyleSheetTheme属性 < 控件属性 < Page指令的Theme属性;

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号