Skip to main content

Concepts

This section contains pages that will help you understand more abstract concepts used by Avalonia. This is background and theory information, supported by code samples you can work through where relevant.

Essentials

Avalonia XAML

Learn about Avalonia XAML, the XML-based markup language used to define the user interface with Avalonia.

Main window

The main window is where most of your UI is displayed to users.

Top level

The top level is the visual root, which handles layout, styling and rendering for other controls.

Cross-platform architecture

How cross-platform app architecture works in the Avalonia framework.

MVVM pattern

An overview of the Model-View-ViewModel (MVVM) pattern, a common app structure that makes use of data binding to move data between parts.

Introduction to data binding

How to use data binding to move data from application objects to UI controls, and change data in response to user input.

Advanced topics

Data templates

Use data templates to specify how data of a particular type should be presented.

Compiled bindings

Avalonia uses compiled bindings by default to improve the performance of your app.

Assets

How to include assets such as images in your app.

Layout

Understand the principles behind Avalonia's layout system, which allows you to arrange controls on your UI.

Styles

Learn about Avalonia's styling system for customizing controls.

Pointer devices

Avalonia uses the abstract concept of a "pointer device" to represent input from devices such as mouse, touchpad or pen.

Discussion

Have questions or feedback? Join the conversation below.