开发者

How do I change ASP.NET App_Themes based on what Skin is selected in RadSkinManager?

开发者 https://www.devze.com 2023-02-28 11:14 出处:网络
How do I change ASP.NET App_Themes based on what Skin is selected in RadSkinManager? I have a RadSkinManager dropdownlist in my masterpage that allows users to select their own skin provided by Teler

How do I change ASP.NET App_Themes based on what Skin is selected in RadSkinManager?

I have a RadSkinManager dropdownlist in my masterpage that allows users to select their own skin provided by Telerik Rad Controls. I want to be able to switch my App_Theme directory so that all my other CSS and asp.net .开发者_如何学运维skin files change along with the RadSkin as well.

Is there a "best practice" for this?


You need to store the users selected theme and set the Page.StyleSheetTheme property.

.NET profiles would work well for your described scenario. Create a UI Theme property and set the page StyleSheetTheme or Theme. Control the theme via your base page.

See http://msdn.microsoft.com/en-us/library/2y3fs9xs.aspx for creating profile properties.

Profile property sample:

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

Accessing the property:

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

Lastly, use your RadSkinManager dropdown list to set the theme for the user profile.

0

精彩评论

暂无评论...
验证码 换一张
取 消