如何根据RadSkinManager中选择的Skin更改ASP.NET App_Themes?

时间:2011-04-21 14:50:48

标签: asp.net css themes telerik skin

如何根据RadSkinManager中选择的外观更改ASP.NET App_Themes?

我的母版页中有一个RadSkinManager下拉列表,允许用户选择Telerik Rad Controls提供的自己的皮肤。我希望能够切换我的App_Theme目录,以便我的所有其他CSS和asp.net .skin文件也与RadSkin一起更改。

对此有“最佳做法”吗?

1 个答案:

答案 0 :(得分:1)

您需要存储用户选择的主题并设置Page.StyleSheetTheme属性。

.NET配置文件适用于您描述的方案。创建UI主题属性并设置页面StyleSheetTheme或Theme。通过基页控制主题。

有关创建个人资料属性的信息,请参阅http://msdn.microsoft.com/en-us/library/2y3fs9xs.aspx

个人资料属性示例:

<profile>
  <properties>
    <group name="UI">
      <add name="Theme" type="System.String" defaultValue="DefaultThemeName" />
    </group>
  </properties>
</profile>

访问该媒体资源:

ProfileCommon profile = new ProfileCommon().GetProfile(HttpContext.Current.User.Identity.Name);
Page.StyleSheetTheme = profile.UI.Theme;

最后,使用RadSkinManager下拉列表设置用户个人资料的主题。