溫故知新ASP.NET 2.0(C#)(2) - Themes(主題)

作者: webabcd  發布時間: 2008-09-04 14:35  閱讀: 5265 次  推薦: 0   原文鏈接   [收藏]  
 

系列文章導航:

溫故知新ASP.NET 2.0(C#)(1) - MasterPage(母版頁)

溫故知新ASP.NET 2.0(C#)(1) - MasterPage(母版頁)

溫故知新ASP.NET 2.0(C#)(2) - Themes(主題)

溫故知新ASP.NET 2.0(C#)(3) - SiteMap(站點地圖)

溫故知新ASP.NET 2.0(C#)(4) - 緩存&SqlCacheDependency

溫故知新ASP.NET 2.0(C#)(5) - Localization

溫故知新ASP.NET 2.0(C#)(8) - DataSourceControl

溫故知新ASP.NET 2.0(C#)(6) - Membership&RoleManager

溫故知新ASP.NET 2.0(C#)(7) - Profile

溫故知新ASP.NET 2.0(C#)(8) - DataSourceControl

 


介紹
使用 ASP.NET 2.0 的“主題”功能,可以將樣式和布局信息分解為單獨的文件組,統稱為“主題”。然后,主題可應用于任何站點,影響站點中頁和控件的外觀。這樣,通過更改主題即可輕松地維護對站點的樣式更改,而無需對站點各頁進行編輯。還可與其他開發人員共享主題。


關鍵
1、在web site中添加App_Themes文件夾,可以在每個主題文件加內添加.skin文件、.css文件(指定主題后會自動加載主題下所有.css文件)或者圖片文件

2、在web.config的<system.web>元素下的<pages>元素下設置theme或者styleSheetTheme屬性(針對全局);在頁的@Page指令里設置Theme或者StylesheetTheme屬性(針對當前頁)

3、Theme定義的樣式不可以覆蓋;StylesheetTheme定義的樣式可以覆蓋

4、.skin文件里不設置SkinId則就是默認的,設置了SkinId后則對應控件的SkinId屬性

5、動態修改Page的Theme要在Page_PreInit方法中實現


示例
Blue主題

<asp:Label runat="server" BackColor="blue" ForeColor="white" />
<asp:Label runat="server" BackColor="DarkBlue" ForeColor="white" SkinId="Dark" />

<%--ImageUrl如下設置則解析到該主題下的Images文件夾的pic.jpg文件--%>
<asp:Image runat="server" ImageUrl="Images/pic.jpg" />


Red主題

<asp:Label runat="server" BackColor="red" ForeColor="white" />
<asp:Label runat="server" BackColor="DarkRed" ForeColor="white" SkinId="Dark" />

<%--ImageUrl如下設置則解析到該主題下的Images文件夾的pic.jpg文件--%>
<asp:Image runat="server" ImageUrl="Images/pic.jpg" />
0
0
 
標簽:ASP.NET Themes
 
 

文章列表

全站熱搜
創作者介紹
創作者 大師兄 的頭像
大師兄

IT工程師數位筆記本

大師兄 發表在 痞客邦 留言(0) 人氣()