Curtis Wensley edited this page Feb 6, 2017 · 12 revisions

Eto.Forms comes with a standard set of controls. Controls can be subclassed to override or implement behaviour. Each control has an implementation for each supported platform, which can be customized or replaced entirely if a particular implementation is not suitable for your use.

Custom controls can either be composed entirely of Eto.Forms controls, which would work across all platforms. If you wish to create a more complex control, or use functionality of a platform that isn't exposed in Eto.Forms, then you can create your own custom controls with implementations for each platform (see Custom Platform Controls).

The standard controls are:

  • Button - Standard button with text
  • Calendar - Calendar control to pick a date or range of dates
  • CheckBox - Check box with a label
  • ColorPicker - Pick a single color value
  • ComboBox - Text entry with a drop down list of items
  • DateTimePicker - Control to enter a date and/or time
  • Drawable - Owner-drawn control using Graphics object
  • DropDown - Drop down with a list of items
  • EnumDropDown - A simple way to create a drop down with values from an Enumeration
  • EnumRadioButtonList - Manages a list of radio buttons from an Enumeration
  • GridView - A virtualized grid of data with editable cells
  • GroupBox - A panel with a border and optional title
  • ImageView - A view to display a single image
  • Label - Displays text
  • LinkButton - A simple label that acts like a button, similar to a hyperlink
  • ListBox - A scrollable list of items
  • ListControl - Base for ListBox, DropDown, ComboBox, and other list-type controls
  • MaskedTextBox - TextBox for variable or fixed length masks
  • Navigation - (mobile) - A pane that can present multiple pages
  • NumericUpDown - Numeric control that allows the user to adjust the value with the mouse
  • Panel - A blank panel container to add other controls
  • PasswordBox - Enter passwords or sensitive data
  • ProgressBar - Show progress of long running tasks
  • RadioButton - Used in a group of radio buttons to allow user to select from values
  • RadioButtonList - Manages a list of radio buttons
  • RichTextArea - Multi-line text area with rich text formatting
  • Scrollable - A scrollable container
  • SearchBox - A text box with search-box functionality
  • Slider - A horizontal or vertical slider to select a value from a range
  • Spinner - A spinner to show indeterminate progress in compact space
  • Splitter - Splits two panes horizontally or vertically
  • TabControl - Presents multiple TabPage containers which the user can select
  • TabPage - A single page of a TabControl
  • TextArea - Multi-line text control with scrollbars
  • TextBox - Single line text input
  • TextControl - Base for any control that contains text
  • TreeView - A control to present nodes in a tree
  • TreeGridView - A TreeView with columns
  • WebView - Control to present a web page through a url or static HTML


  • Form - A modeless window
  • Dialog - A modal dialog with no result value
  • Dialog<T> - A modal dialog with a custom result value


You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.