2013-04-29 56 views
0

我在页面内使用RadToolbar控件,其中几乎有无回发。 此页面具有的功能之一是多​​个主题。用客户端代码更改Telerik的ASP.NET RadToolbar皮肤

现在,我需要根据我的主题设置RadToolbar的外观。 我看到RadToolbar对象的客户端API包含一个“get_skin”方法,该方法可正确返回服务器端分配的皮肤名称的名称。但该对象没有“set_skin”方法。

我在问的是,是否有方法来改变工具栏的皮肤哪些客户端代码,或不;如果不是的话,你还有什么建议。

谢谢

回答

0

我确实解决了这个问题。这是一个有趣的。

  1. 我发现不同的样式表文件在我的页面中由RadToolbar为不同的主题呈现。
    对于每个皮肤(即'黑'),将为该皮肤呈现css类(即'RadToolbar_Black')
  2. 我将这些样式表添加到我自己的代码中,并下载了这些css类中使用的每个图像。之后,我将url()地址更改为保存的图像文件。此外,我更换皮肤的名称(即“_Black”),以“_Default”
    (样式表文件和图像都是网络资源Telerik.Web.UI组装和使用WebResource.axd处理程序被引用。)
  3. 我的每个主题,我创建了一个独立的.css文件。
  4. 现在我禁用了telerik的皮肤。 Propertis EnableEmbeddedSkinsEnableEmbeddedBaseStylesheet做到了。
  5. 将RadToolbar的皮肤设置为'默认'或只是省略赋值。
  6. 最后,我需要做的是使用Javascript来切换这些CSS文件来改变工具栏的主题。