如何根据RadSkinManager中选择的外观更改ASP.NET App_Themes?
我的母版页中有一个RadSkinManager下拉列表,允许用户选择Telerik Rad Controls提供的自己的皮肤。我希望能够切换我的App_Theme目录,以便我的所有其他CSS和asp.net .skin文件也与RadSkin一起更改。
对此有“最佳做法”吗?
答案 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下拉列表设置用户个人资料的主题。