【问题标题】:Custom Telerik Skin assembly is not loading its styles自定义 Telerik Skin 程序集未加载其样式
【发布时间】:2015-06-26 04:26:45
【问题描述】:

我按照以下说明操作:http://docs.telerik.com/devtools/aspnet-ajax/general-information/controlling-visual-appearance/how-to-load-skins-from-external-assemblies

Button.Test.css

.RadButton_Test {
  background-color: red !important;
}

Button.css

>

RadButton.cs

[assembly: System.Web.UI.WebResource("Skins.Button.css", "text/css", PerformSubstitution = true)]
[assembly: System.Web.UI.WebResource("Skins.Test.Button.css", "text/css", PerformSubstitution = true)]
namespace Skins
{

  [Telerik.Web.EmbeddedSkin("Button", null, typeof(RadButton))] 
  [Telerik.Web.EmbeddedSkin("Button", "Test", typeof(RadButton))] 
  public class RadButton
  {
  }
}

web.config

<add key="Telerik.Web.SkinsAssembly" value="Skins"/>

page.aspx

<telerik:RadButton ID="btn" ButtonType="LinkButton" runat="server" Skin="Test" Text="GO" OnClick="btnClick"></telerik:RadButton>        

.

.

按钮不是红色的。页面呈现良好但没有样式。当我将skin="Test" 更改为skin="TestXX" 时,我收到没有嵌入皮肤TestXX 的错误,因此它们似乎已正确加载。按钮呈现为具有 RadButton_Test 类。

我错过了什么?

【问题讨论】:

    标签: c# asp.net telerik skinning skin


    【解决方案1】:

    首先,尝试使用 AssemblyBuilder:http://skinsassemblybuilder.telerik.com/,以防问题在于程序集的生成。

    如果这没有帮助,请尝试来自此线程的示例项目:http://www.telerik.com/support/code-library/how-to-load-skins-from-external-assemblies。您可以尝试在将文件和命名空间替换为您自己的文件后重命名它们。

    通常,您应该确保获取所有网络资源。如果出现 404 错误,可能有两种原因:

    • 样式表/精​​灵未标记为Embedded Resource(这是他们的Build Action

    • 路径和/或命名空间不正确。以下是一些注册内置皮肤的代码,因此您可以将其用作参考:http://pastebin.com/BJJbgngB(使用的 C# 语法破坏了 SO 的降价)

    【讨论】:

    • 感谢您的回复。我现在在没有 Telerik 的情况下走完全不同的路线(商业原因),所以我无法测试你的答案。
    猜你喜欢
    • 1970-01-01
    • 2015-09-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-25
    • 1970-01-01
    • 2020-09-03
    相关资源
    最近更新 更多