# Themes

This topic covers information related to configuring themes in ribbon control.

## Content



A user can apply themes to the C1Ribbon control in the WinForms application by selecting one of the built-in themes, which can be accessed by adding the reference assembly **C1.Win.C1Themes.4.5.2.**

**![themes in ribbon](https://cdn.mescius.io/document-site-files/images/5560dc72-88a5-4eeb-a384-981194dfc831/images/themesgif.gif)**

The assembly provides the following built-in themes:

*   BeigeOne
*   ExpressionDark
*   ExpressionLight
*   GreenHouse
*   MacBlue
*   MacSilver
*   Office2007Black
*   Office2007Blue
*   Office2007Silver
*   Office2010Barbie
*   Office2010Black
*   Office2010Blue
*   Office2010Green
*   Office2010Red
*   Office2010Silver
*   Office2013DarkGray
*   Office2013Gray
*   Office2013Green
*   Office2013HighContrast
*   Office2013LightGray
*   Office2013Red
*   Office2013White
*   Office2016Black
*   Office2016Colorful
*   Office2016DarkGray
*   Office2016White
*   RanierOrange
*   ShinyBlue
*   Violette
*   VS2013Blue
*   VS2013Dark
*   VS2013DarkSolar
*   VS2013Green
*   VS2013Light
*   VS2013Purple
*   VS2013Red
*   VS2013Tan
*   Windows8Blue
*   Windows8Brown
*   Windows8Gray
*   Windows8Green
*   Windows8Red
*   Material
*   MaterialDark
*   Office2016Green

In this section we have covered an example of adding the Themes functionality to <span data-popup-content="This class is available in \u003ca href=\u0022/componentone/docs/win/online-ribbon/\u0022\u003e.NET\u003c/a\u003e and \u003ca href=\u0022/componentone/docs/win/online-ribbon/\u0022\u003e.NET Framework\u003c/a\u003e." data-popup-title="C1Ribbon" data-popup-theme="ui-tooltip-green qtip-green">C1Ribbon</span> through code. We have used a ComboBox control to populate the available themes. You can use any preferred control to populate the Themes. Refer the code snippet below.

**vbnet**

```vbnet
Public Class ComboBoxHost
    Inherits RibbonControlHost
    Public Sub New()
        MyBase.New(New System.Windows.Forms.ComboBox())
        Dim ribbonBox = DirectCast(MyBase.Control, ComboBox)
        ribbonBox.Items.AddRange(C1ThemeController.GetThemes())
        ribbonBox.Text = "Select a theme"
        AddHandler ribbonBox.SelectedIndexChanged, AddressOf RibbonBox_SelectedIndexChanged
    End Sub
    Private Sub RibbonBox_SelectedIndexChanged(sender As Object, e As EventArgs)
        Dim themmeCombo As ComboBox = DirectCast(sender, ComboBox)
        Dim theme As C1Theme = C1ThemeController.GetThemeByName(themmeCombo.Text, False)
        C1ThemeController.ApplyThemeToControlTree(Me.Ribbon, theme)
    End Sub
End Class
```

**csharp**

```csharp
private void c1Ribbon1_RibbonEvent(object sender, RibbonEventArgs e)
{
    //Populate the Combobox with available themes
        var themeCombo = (ComboBox)comboBoxHost1.Control;
    themeCombo.Items.AddRange(C1ThemeController.GetThemes());
    themeCombo.Text = "Select a theme";
    themeCombo.SelectedIndexChanged += ThemeCombo_SelectedIndexChanged;
}
//Apply the selected theme to Ribbon
    private void ThemeCombo_SelectedIndexChanged(object sender, EventArgs e)
{
    ComboBox themmeCombo = ((ComboBox)sender);
    C1Theme theme = C1ThemeController.GetThemeByName(themmeCombo.Text, false);
    C1ThemeController.ApplyThemeToControlTree(this.Ribbon, theme);
}
}
//Add ComboBox to Ribbon using ControlHost RibbonGroup Item
public class ComboBoxHost : RibbonControlHost
{
public ComboBoxHost() : base(new System.Windows.Forms.ComboBox())
{
}
}
```