ComponentOne Gauges for WPF and Silverlight
Layout and Appearance / Available Themes
In This Topic
    Available Themes
    In This Topic

    Gauges for WPF and Silverlight incorporates several themes that allow you to customize the appearance of your grid. The default theme appears similar to the following:

     

     

    This is the control's default appearance. You can change this appearance by using one of the built-in themes or by creating your own custom theme. All of the built-in themes are based on WPF Toolkit themes. Some of these themes are described and pictured below; note that in the images below, a row has been selected to show selected styles:

     

    Theme Name

    Theme Preview

    C1ThemeBureauBlack

    C1ThemeExpressionDark

    C1ThemeExpressionLight

    C1Blue

    C1ThemeShinyBlue

    C1ThemeWhistlerBlue

     

    To set an element's theme, use the ApplyTheme method. First add a reference to the theme assembly to your project, and then set the theme in code, like this:

    Visual Basic
    Copy Code
    Private Sub Window_Loaded(sender As System.Object, e As System.Windows.RoutedEventArgs) Handles MyBase.Loaded
       Dim theme As New C1ThemeExpressionDark
       ' Using ApplyTheme
       C1Theme.ApplyTheme(LayoutRoot, theme)
    

     

    C#
    Copy Code
    private void Window_Loaded(object sender, RoutedEventArgs e)
       {
          C1ThemeExpressionDark theme = new C1ThemeExpressionDark();
          //Using ApplyTheme
          C1Theme.ApplyTheme(LayoutRoot, theme);
       }
    

     

    To apply a theme to the entire application, use the System.Windows.ResourceDictionary.MergedDictionaries property. First add a reference to the theme assembly to your project, and then set the theme in code, like this:

    Visual Basic
    Copy Code
    Private Sub Window_Loaded(sender As System.Object, e As System.Windows.RoutedEventArgs) Handles MyBase.Loaded
       Dim theme As New C1ThemeExpressionDark
       ' Using Merged Dictionaries
    Application.Current.Resources.MergedDictionaries.Add(C1Theme.GetCurrentThemeResources(theme))
    End Sub
    

     

    C#
    Copy Code
    private void Window_Loaded(object sender, RoutedEventArgs e)
       {
          C1ThemeExpressionDark theme = new C1ThemeExpressionDark();
          //Using Merged Dictionaries
          Application.Current.Resources.MergedDictionaries.Add(C1Theme.GetCurrentThemeResources(theme));
       }
    

    Note that this method works only when you apply a theme for the first time. If you want to switch to another ComponentOne theme, first remove the previous theme from Application.Current.Resources.MergedDictionaries.