# Theme class

Namespace: [Eto.Forms](https://eto.picoe.ca/api/namespace/eto.forms.md) · Assembly: [Eto](https://eto.picoe.ca/api/assembly/eto.md) · Since v2.12

```cs
[Handler(Theme.IHandler)]
public class Theme : Widget
```

Represents a visual theme that can be applied to the application.

**Remarks:** Themes control the overall visual appearance of the application, such as light or dark mode. Use [Application.Theme](https://eto.picoe.ca/api/type/eto.forms.application/theme.md) to get or set the active theme, and [Themes](https://eto.picoe.ca/api/type/eto.forms.themes.md) to enumerate available themes.

## Constructors

- [Theme](https://eto.picoe.ca/api/type/eto.forms.theme/ctor.md): Initializes a new instance of the [Theme](https://eto.picoe.ca/api/type/eto.forms.theme.md) class with the specified handler.

## Properties

- [Name](https://eto.picoe.ca/api/type/eto.forms.theme/name.md): Gets the display name of the theme.
- [ThemeStyle](https://eto.picoe.ca/api/type/eto.forms.theme/themestyle.md): Gets the style category of the theme (System, Light, or Dark).

## Methods

- [Equals](https://eto.picoe.ca/api/type/eto.forms.theme/equals.md): Determines whether the specified object is equal to the current object.
- [GetHashCode](https://eto.picoe.ca/api/type/eto.forms.theme/gethashcode.md): Serves as the default hash function.
- [ToString](https://eto.picoe.ca/api/type/eto.forms.theme/tostring.md): Gets a string that represents the current object with its ID if specified.

## Operators

- [operator ==](https://eto.picoe.ca/api/type/eto.forms.theme/op-equality.md): (static) Determines whether two [Theme](https://eto.picoe.ca/api/type/eto.forms.theme.md) instances are equal based on their name and style.
- [operator !=](https://eto.picoe.ca/api/type/eto.forms.theme/op-inequality.md): (static) Determines whether two [Theme](https://eto.picoe.ca/api/type/eto.forms.theme.md) instances are not equal based on their name and style.

## Inherited Members

- From [Widget](https://eto.picoe.ca/api/type/eto.widget.md): [ControlObject](https://eto.picoe.ca/api/type/eto.widget/controlobject.md), [Handler](https://eto.picoe.ca/api/type/eto.widget/handler.md), [ID](https://eto.picoe.ca/api/type/eto.widget/id.md), [IsDisposed](https://eto.picoe.ca/api/type/eto.widget/isdisposed.md), [NativeHandle](https://eto.picoe.ca/api/type/eto.widget/nativehandle.md), [Platform](https://eto.picoe.ca/api/type/eto.widget/platform.md), [Properties](https://eto.picoe.ca/api/type/eto.widget/properties.md), [Style](https://eto.picoe.ca/api/type/eto.widget/style.md), [StyleChanged](https://eto.picoe.ca/api/type/eto.widget/stylechanged.md), [Dispose](https://eto.picoe.ca/api/type/eto.widget/dispose.md), [GetCallback](https://eto.picoe.ca/api/type/eto.widget/getcallback.md), [Initialize](https://eto.picoe.ca/api/type/eto.widget/initialize.md), [OnStyleChanged](https://eto.picoe.ca/api/type/eto.widget/onstylechanged.md)
