如何在Telerik WinForms中切换主题?

Joe*_*ite 10 telerik winforms

如何告诉Telerik WinForms使用哪个主题?

我创建了一个新的WinForms项目,并在表单上删除了一个RadPageView,但是一直有5像素的死区空间,标签几乎是他们需要的两倍高,而且一切都是闪亮的蓝色.即使除了浪费的空间,所有这些蓝色的东西在我们的应用程序中看起来非常不合适.我只想要一个标准的Windows外观,我假设实现这一目标的方法是选择一个不同的,不那么蓝,不那么闪亮的主题.(或者还有另一种方式吗?)

这是我尝试过的:

  • 我尝试将EnableTheming设置为False,但随后选项卡根本没有边框,因此绝对没有指示单击的位置或哪个选项卡处于活动状态 - 一点也不好.
  • 我可以在Property Grid中下拉ThemeName属性,但唯一的选项是"Reset"和"ControlDefault".两个设置都没有做任何事情(即使EnableTheming设置回True).
  • 工具箱中有一堆主题类(AquaTheme,BreezeTheme等),但在我的表单中添加这些类没有任何区别.我认为它们可能出现在ThemeName下拉列表中,但它们没有.
  • 我尝试在我的表单上删除RadThemeManager,但它只有一个LoadedThemes集合,它是空的.我可以添加一些内容,但这只是添加了一个ThemeSource,并设置其中一个似乎涉及浏览到一个文件,我没有任何主题文件可供浏览.
  • RadPageView上有一个ThemeClassName属性,但它只是一个字符串(默认为Telerik.WinControls.UI.RadPageView),我不知道我可能会改变它,或者它甚至与主题有什么关系.

这是荒唐的.我想要的是一个看起来像标签控件的标签控件!我怎样才能做到这一点?

Sho*_*rob 13

完成此应用程序范围的最佳方法是使用ThemeResolutionService.您需要先从工具箱中拖出其中一个主题.例如,如果将Windows7Theme组件添加到表单,则使用以下内容应用主题.

private void Form1_Load(object sender, EventArgs e)
{
    ThemeResolutionService.ApplicationThemeName = "Windows7";
}
Run Code Online (Sandbox Code Playgroud)

我建议您查看与主题相关的视频:http: //tv.telerik.com/watch/winforms/visualstylebuilder/changing-themes-at-run-time-with-radcontrols-winforms