首页 > 代码库 > Silverlight Telerik 学习之主题的设置
Silverlight Telerik 学习之主题的设置
Telerik控件版本:RadControls for Silverlight Q1 2013
当前的Telerik Silverlight 控件支持以下主题
Office Black - 这是默认主题,无需加载其它任何dll文件。
Office Blue - 引用 Telerik.Windows.Themes.Office_Blue.dll。
Office Silver - 引用 Telerik.Windows.Themes.Office_Silver.dll。
Summer - 引用 Telerik.Windows.Themes.Summer.dll。
Transparent - 引用 Telerik.Windows.Themes.Transparent.dll。
Vista - 引用 Telerik.Windows.Themes.Vista.dll。
Windows 7 - 引用 Telerik.Windows.Themes.Windows7.dll。
Window 8 - 引用Telerik.Windows.Themes.Windows8.dll。
Windows8 Touch -引用Telerik.Windows.Themes.Windows8Touch。
Metro(obsolete) - 引用Telerik.Windows.Themes.Metro.dll。应该替换成windows8主题。
创建一个Silverlight工程,引用需要的dll
下图是Windows8 Touch的效果
1.设置特定的XAML内置样式(这样只改变指定控件样式)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | <UserControl x:Class= "Test.MainPage" xmlns= "http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x= "http://schemas.microsoft.com/winfx/2006/xaml" xmlns:telerik= "clr-namespace:Telerik.Windows.Controls;assembly=Telerik.Windows.Controls" > <Grid x:Name= "LayoutRoot" > <telerik:RadTabControl x:Name= "tab1" telerik:StyleManager.Theme= "Windows8Touch" > <telerik:RadTabItem Header= "导航一" ></telerik:RadTabItem> <telerik:RadTabItem Header= "导航二" ></telerik:RadTabItem> <telerik:RadTabItem Header= "导航三" ></telerik:RadTabItem> </telerik:RadTabControl> </Grid> </UserControl> |
或者通过后台代码控制 StyleManager.SetTheme( tab1, new VistaTheme() );
2.设置应用程序内置主题后台代码(这样影响的是页面控件的样式)
public partial class MainPage : UserControl { public MainPage() { StyleManager.ApplicationTheme = new Windows8TouchTheme(); InitializeComponent(); } }
或者
public partial class App : Application { public App() { this.Startup += this.Application_Startup; this.Exit += this.Application_Exit; this.UnhandledException += this.Application_UnhandledException; StyleManager.ApplicationTheme = new Windows8TouchTheme(); InitializeComponent(); } }
3.自定义主题
如果觉得这些样式满足不了要求可以自己定义一些主题
创建一个自定义主题类
然后在自定义主题类的构造函数中指定source
[ThemeLocation( ThemeLocation.BuiltIn )] public class CustomTheme : Telerik.Windows.Controls.Theme { }
public CustomTheme() { this.Source = new Uri( "/Telerik.Windows.Themes.CustomTheme;component/themes/Generic.xaml", UriKind.Relative ); }
参考文章 http://www.telerik.com/help/silverlight/common-styling-apperance-setting-theme.html