Telerik Rad使用RadSkinManager定制主题

时间:2016-04-19 22:12:33

标签: c# asp.net user-interface telerik themes

我需要使用Telerik Rad Controls为新客户端创建主题。我们有两种方法可以做到。

  1. Create and Register Telerik Rad Control Custom skin manually

  2. Create and Embed Telerik Rad Control Custom Skin into an Assembly

  3. 在我现有的应用程序中,我们很少使用内置的Telerik主题,并使用RadSkinManager填充它们,如下所示。如何在RadSkinManager中保留所有主题下拉并添加客户端正在寻找的新自定义主题?

    <telerik:RadSkinManager ID="RadSkinManager" runat="server" ShowChooser="True" Visible="false" PersistenceMode="Session">
    </telerik:RadSkinManager>
    

1 个答案:

答案 0 :(得分:1)

为了能够在Telerik主题旁边列出自定义主题,您需要按照以下步骤操作。

  1. 使用Creating a Custom Skin下列出的选项之一构建自定义主题。我利用Visual Style Builder工具根据现有的Telerik主题创建了一个名为MetroRed的主题,并下载了主题文件。
  2. 根据Skin Assembly Builder
  3. 中列出的步骤,使用您的自定义主题文件,使用Create a Custom Skin dll from an Existing Custom Skin with Skin's Assembly Builder制作自定义皮肤dll
  4. 在ASP.NET项目中添加对上面步骤2中创建的自定义外观dll的引用
  5. 修改RadSkinManager声明,如下所示
  6. E.g。显示Default.aspx下拉列表的SkinChooser

    <telerik:RadSkinManager ID="RadSkinManager" runat="server" ShowChooser="True">
        <Skins>
            <telerik:SkinReference Assembly="MetroRed" />
        </Skins>
    </telerik:RadSkinManager>
    
    1. SkinChooser中显示自定义皮肤 - 在Default.aspx页面的Init(代码隐藏)中明确添加新皮肤,如下所示:
    2. E.g。 Default.aspx.cs

      protected void Page_Init(object sender, EventArgs e)
      {
          var skinCombo = RadSkinManager.GetSkinChooser();
          skinCombo.Items.Add(new RadComboBoxItem("Metro Red", "MetroRed"));
      }
      

      现在SkinChooser会列出自定义皮肤'Metro Red'以及其他Telerik默认主题,最终用户可以从列表中选择首选主题。

      参考: Creating a Custom SkinTelerik Forum question on Skin chooserHow to load skins from external assemblies - 查看Tsvetoslav上传的示例项目RadCustomSkinSelected