Avalonia.Controls.TreeDataGrid 12.0.3

Prefix Reserved
dotnet add package Avalonia.Controls.TreeDataGrid --version 12.0.3
                    
NuGet\Install-Package Avalonia.Controls.TreeDataGrid -Version 12.0.3
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Avalonia.Controls.TreeDataGrid" Version="12.0.3" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Avalonia.Controls.TreeDataGrid" Version="12.0.3" />
                    
Directory.Packages.props
<PackageReference Include="Avalonia.Controls.TreeDataGrid" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Avalonia.Controls.TreeDataGrid --version 12.0.3
                    
#r "nuget: Avalonia.Controls.TreeDataGrid, 12.0.3"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Avalonia.Controls.TreeDataGrid@12.0.3
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Avalonia.Controls.TreeDataGrid&version=12.0.3
                    
Install as a Cake Addin
#tool nuget:?package=Avalonia.Controls.TreeDataGrid&version=12.0.3
                    
Install as a Cake Tool

Avalonia TreeDataGrid

The Avalonia TreeDataGrid is a control which displays hierarchical and tabular data together in a single view. It is a combination of a TreeView and DataGrid control.

Requirements

As of 11.2.0 this package requires an Avalonia Accelerate license: https://avaloniaui.net/accelerate

Features

  • Flat or hierarchical layout
    • Flat: data is displayed in a 2D table, similar to other DataGrid controls
    • Hierarchical: data is displayed in a tree with optional columns
  • Column types
    • Text
    • CheckBox
    • Template
  • Selection
    • Row selection allows the user to select whole rows
    • Cell selection allows the user to select individual cells
  • Column sorting
  • MVVM-first data model

Quick Start

Get started quickly with the TreeDataGrid component: https://docs.avaloniaui.net/accelerate/components/treedatagrid/quickstart

Customizing the theme

The control's theme XAML (Generic.axaml and Fluent.axaml) ships in this package under the themes/ folder as a reference for customization, along with a themes/README.md listing the customizable resources and control themes for this version. See the documentation for how to override them.

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (16)

Showing the top 5 NuGet packages that depend on Avalonia.Controls.TreeDataGrid:

Package Downloads
FrameworkOfAliveApplication.AvaloniaBase

Avalonia base library for .net8.0 and above

Semi.Avalonia.TreeDataGrid

Avalonia Theme inspired by Semi Design.

Material.Avalonia.TreeDataGrid

TreeDataGrid styles library of Material.Avalonia.

DynamicTreeDataGrid

Library used to add DynamicData-oriented features to Avalonias TreeDataGrid.

Fabulous.Avalonia.TreeDataGrid

Tree Data Grid for Fabulous.Avalonia

GitHub repositories (8)

Showing the top 8 popular GitHub repositories that depend on Avalonia.Controls.TreeDataGrid:

Repository Stars
WalletWasabi/WalletWasabi
Open-source, non-custodial, privacy preserving Bitcoin wallet for Windows, Linux, and Mac.
Nexus-Mods/NexusMods.App
Home of the development of the Nexus Mods App
irihitech/Semi.Avalonia
Avalonia theme inspired by Semi Design
friflo/Friflo.Engine.ECS
High-performance C# ECS
namigop/FintX
Native, cross-platform gRPC test bench
friflo/Friflo.Json.Fliox
C# ORM - High Performance, SQL, NoSQL, Messaging, Pub-Sub
NeilMacMullen/kusto-loco
C# KQL query engine with flexible I/O layers and visualization
FrostyToolsuite/FrostyToolsuite
The most advanced modding platform for games running on DICE's Frostbite game engine.
Version Downloads Last Updated
12.0.3 366 6/29/2026
12.0.2 1,606 6/8/2026
12.0.1 1,138 5/27/2026
12.0.0 3,210 5/8/2026
12.0.0-beta3 2,555 4/9/2026
12.0.0-beta2 226 4/2/2026
12.0.0-beta1 171 3/20/2026
11.3.2 18,269 3/13/2026
11.3.1 3,389 2/18/2026
11.3.0-beta4 158 2/5/2026
11.3.0-beta2 274 1/19/2026
11.3.0-beta1 3,919 12/2/2025
11.2.4 434 2/5/2026
11.2.3 4,563 11/20/2025
11.2.2 593 11/20/2025
11.2.1 3,061 10/17/2025
11.2.0 2,924 10/13/2025
Loading failed

# 12.0.3

- Expose `ModelIndexToRowIndex` and `RowIndexToModelIndex`
- Fix exception when using Shift+Arrow keys in single cell selection mode
- Fix `BringIntoView` failing to bring variable size rows/columns into view, which could cause keyboard navigation to lose the selected row and keyboard focus
- Fix tab key resetting multiple cell selection
- Fix stale selection after replacing a node with selected descendants
- Fix dragging across a multiple row selection collapsing it to a single row
- Fix clicking a cell not moving keyboard focus to the clicked column, so arrow-key navigation continued in the wrong column
- Add F2 editing and `Ctrl+Left`/`Ctrl+Right` cell-focus navigation to row selection
- Fix F2 not honoring a column's `BeginEditGestures.F2` flag, so F2 could edit columns that opted out of the gesture
- Fix arrow-key navigation to a parent or child row not marking the key event handled, so it continued to bubble
- Fix editing a hierarchical expander column not entering edit mode, because the edit was not forwarded to the expander's inner content cell
- Fix `nth-last-child` row/cell/column selectors not updating after rows are added, removed or reordered (e.g. by drag/drop)
- Fix cell edits immediately committing because a pointer release moved keyboard focus out of the active editor (e.g. when double-tapping a selected row or clicking the open editor)
- Ship theme XAML as reference source in NuGet package

# 12.0.2

- Take into account `Padding` and `Margin` when laying out rows
- Fix star-sized columns overflowing the viewport (causing a spurious horizontal scrollbar) when columns are clamped to their `MinWidth`, the window is narrowed, or layout rounding rounds the column widths up
- Throw a clear `InvalidOperationException` (instead of an internal `ArgumentOutOfRangeException`) when a `SelectionChanged` event's `SelectedItems`/`DeselectedItems` are read after the source collection was modified

# 12.0.1

- Add `SelectAll` and `SelectRange` to the row and cell selection models
- Add `Ctrl+A` (`Cmd+A` on macOS) gesture to select all rows/cells
- Fix expander row flicker when double-tapping the chevron
- Fix selection artifacts when modifying the row collection during scroll
- Fix keyboard selection navigation not working after clicking a row with drawn cells
- Fix column header double-subscribing to the column model's `PropertyChanged` event

# 12.0.0

Changes since 11.x:

- Targets Avalonia 12
- Define TreeDataGrid columns from XAML
- Major refactoring of API - see breaking changes doc
- Optional drawn text cells for better performance
- Standardize theme brush resources for full customization
- Unified `SelectionChangedEventArgs` for row and cell selection

# 12.0.0-beta3

- Add `TreeDataGrid.BringRowIntoView`
- Fix drag/drop issues

# 12.0.0-beta2

- Optional drawn text cells for better performance
- Standardize theme brush resources for full customization
- Unseal TreeDataGrid
- Small API cleanup

# 12.0.0-beta1

- Define TreeDataGrid columns from XAML
- Major refactoring of API - see breaking changes doc
- Fluent columns API
- Unified `SelectionChangedEventArgs` for row and cell selection
- Experimental bindings removed - TreeDataGrid now uses standard Avalonia bindings

# 11.3.2

- Fix PageUp jumping to start when columns wider than viewport
- Fix crash on template cell visual tree detach

# 11.3.1

- Add `RowHeaderColumn` for displaying row headers
- Fix Auto columns being rendered out of viewport with * column
- Update focus when selection moved by keyboard with cell selection
- Fix some edit controls not being correctly focused on entering edit mode
- Update selection on pointer down event

# 11.3.0-beta2

- Frozen Columns
- Show/hide Columns

# 11.3.0-beta1

- Filtering API

# 11.2.4

- Fix Auto columns being rendered out of viewport with * column
- Update focus when selection moved by keyboard with cell selection
- Fix some edit controls not being correctly focused on entering edit mode
- Update selection on pointer down event

# 11.2.3

- Expose `BeginBatchUpdate` and `EndBatchUpdate` on `TreeDataGridCellSelectionModel<T>`

# 11.2.2

- Support nullable `TreeDataGridRow` in drag-and-drop events for empty grids

# 11.2.1

- Improved licensing messaging when no key is available.

# 11.2.0

- Allow drag operations from sorted TreeDataGrid rows
- Add netstandard2.0 support
- Fix editing enum values in text columns
- Add tri-state column sorting option
- Make FlatTreeDataGridSource.Sort public
- Remove System.Reactive dependency
- Fix issue with variable height cells overlapping