Skip to main content

Controls

Avalonia apps are made of high-level building blocks called controls, which allow you to quickly construct the UI for your app. Avalonia comes with lots of controls, including buttons, lists, tabs and more. These pages explain the essential functionalities of Avalonia controls. For detailed information, see the API Reference.

Border

A decorator that draws a border and background around its child content.

Button

Buttons let your users take action. They're an essential way to interact with and navigate an app.

Calendar

A full calendar view that lets users browse and select dates visually.

Checkbox

Use a checkbox for binary user decisions, such as feature toggles, survey questions or task lists.

ComboBox

ComboBox shows a selected item and displays a list of options when clicked.

Date Picker

Date pickers present a compact interface for users to select dates.

Grid

The grid is a powerful layout control that arranges other controls in columns and rows.

Image

Display images and decide how they interact with other UI elements.

Label

A text label that provides access key support for its target control.

ListBox

Lists display rows of information, such as contacts, languages or music genres.

Markdown

Render and display Markdown-formatted text content directly in your app.

Media Player

A full-featured media player control for playing audio and video content.

Menu

Use menus to organize user options and improve ease of navigation.

On-Screen Keyboard

A virtual keyboard for touch-based text input on devices without physical keyboards.

Panel

The base class for all panel elements used to position and arrange child controls.

Radio Button

Radio buttons allow you to present a set of mutually exclusive options.

Rectangle

A basic shape primitive for drawing rectangles and squares in your UI.

ScrollViewer

A container that provides scrollable content when its child exceeds the available space.

Slider

Sliders let users select a numerical value by moving a knob along a track.

SplitView

A container with a collapsible pane and a content area, ideal for navigation layouts.

StackPanel

Arranges child controls in a single line, stacked horizontally or vertically.

Tab Control

Tabs enable tabbed navigation, a standard navigation pattern in modern apps.

TextBlock

A lightweight control for displaying small amounts of read-only text.

TextBox

Text boxes create an area for text input, a staple of almost any type of app.

Toggle Switch

Toggle switches let users flip between on and off states for binary options like settings.

TreeView

Displays hierarchical data in an expandable tree structure.

UniformGrid

A grid panel that automatically sizes all cells to be equal, creating a uniform layout.

WebView

Embed web content directly into your app using a native browser engine.