自定义Telerik皮肤组件未加载其样式
本文关键字:加载 样式 组件 Telerik 自定义 | 更新日期: 2023-09-27 18:00:02
我遵循了以下说明: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;
}
按钮.css
<lt;空文件>>
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
。
我想念什么?
首先,尝试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的降价)