色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

如何在網站級別動態更改主題

在做一個項目的時候,要求客戶可以選擇自己喜歡的主題。簡單查了一下資料,思路上基本是這樣的:
1. 數據庫客戶表有一個字段(暫時取名為Theme),專門記錄客戶喜歡的主題。
2. 當客戶第一次登錄后,網站呈現的是默認的主題模式,創建Session,查詢數據庫并為其賦值(當然對于新客戶Theme字段有默認值為Default)。根據客戶選擇的主題不同,在更改網站的主題同時,將此主題存入數據庫。以便再次登錄后顯示此主題。

那么關鍵的一點是如何可以動態得更改整個網站的主題呢?

我采用這個方案:
1.  創建一個從 System.Web.UI.Page 繼承的 ThemePage 類,此類重寫 OnPreInit 方法:

1Protected Overrides Sub OnPreInit()Sub OnPreInit(ByVal e As EventArgs)
2        MyBase.OnPreInit(e)
3
4        If Not Session("Theme") Is Nothing Then
5            Page.Theme = Session("Theme")
6        End If
7End Sub
8
2. 將其他所有的page頁都繼承自 ThemePage類,登錄頁可以除外。

3. 在切換主題頁里這么處理:

1If ddlTheme.SelectedIndex = 0 Then
2            Session("Theme") = "Default"  ' Use the default Theme
3Else
4            Session("Theme") = ddlTheme.SelectedValue
5End If
6UpdateTheme() ' Store to database
刷新當前頁以顯示新的主題可以這么做:

Server.Transfer(Request.FilePath)

這樣就可以實現主題的動態全局更換了,希望能給大家一些借鑒,如果有更好的方法,還請不吝賜教啊。

另外附一些關于ASP.NET主題的技術文章:
http://msdn2.microsoft.com/en-us/library/ms379601(VS.80).ASPx
http://www.dedecms.com/web-art/ASP_NETjiaocheng/20060819/21832.html
http://www.codeproject.com/useritems/dynamicThemes.ASP
http://www.codeproject.com/ASPNET/ThemesAndSkins.ASP

AspNet技術如何在網站級別動態更改主題,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 钟祥市| 西平县| 肇庆市| 双牌县| 崇文区| 宜君县| 南漳县| 浠水县| 太康县| 古田县| 德钦县| 石台县| 伊宁市| 新乡县| 东兰县| 共和县| 许昌县| 蓝山县| 德令哈市| 鄂温| 阿尔山市| 博罗县| 南宁市| 金昌市| 谢通门县| 沾益县| 洪湖市| 六安市| 顺义区| 新泰市| 伊通| 曲阜市| 格尔木市| 弋阳县| 万宁市| 涟源市| 合川市| 锦屏县| 凯里市| 潢川县| 邵阳县|