Fabulous.Avalonia.TreeDataGrid
10.0.2
See the version list below for details.
dotnet add package Fabulous.Avalonia.TreeDataGrid --version 10.0.2
NuGet\Install-Package Fabulous.Avalonia.TreeDataGrid -Version 10.0.2
<PackageReference Include="Fabulous.Avalonia.TreeDataGrid" Version="10.0.2" />
<PackageVersion Include="Fabulous.Avalonia.TreeDataGrid" Version="10.0.2" />
<PackageReference Include="Fabulous.Avalonia.TreeDataGrid" />
paket add Fabulous.Avalonia.TreeDataGrid --version 10.0.2
#r "nuget: Fabulous.Avalonia.TreeDataGrid, 10.0.2"
#:package Fabulous.Avalonia.TreeDataGrid@10.0.2
#addin nuget:?package=Fabulous.Avalonia.TreeDataGrid&version=10.0.2
#tool nuget:?package=Fabulous.Avalonia.TreeDataGrid&version=10.0.2
TreeDataGrid for Fabulous.Avalonia
The tree data grid displays hierarchical and tabular data together in a single view. It is a combination of a tree view and data grid.. See the Avalonia documentation for more information.
License required: Avalonia TreeDataGrid is a premium Avalonia control and requires a commercial Avalonia license. The
Fabulous.Avalonia.TreeDataGridpackage provides a Fabulous wrapper but does not include that license. See the Fabulous Avalonia licensing guide.
How to use
- Add the
Fabulous.Avalonia.TreeDataGridpackage to your project. - Open
Fabulous.Avaloniaat the top of the file where you declare your Fabulous program (eg. Program.stateful).
open Fabulous.Avalonia
open type Fabulous.Avalonia.View
Using the TreeDataGrid Widget
Now you can use the TreeDataGrid widget in your Fabulous app as follows:
TreeDataGrid(colums)
TreeDataGrid(colums, rows)
A full, working example is included in the TreeDataGridPage sample
Other useful links:
Additionally, we have the Fabulous Discord server where you can ask any of your Fabulous related questions.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. 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. |
-
net10.0
- Avalonia.Controls.TreeDataGrid (>= 12.2.1)
- Fabulous.Avalonia (>= 10.0.2)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 10.0.4 | 79 | 10/12/2026 |
| 10.0.3 | 91 | 9/30/2026 |
| 10.0.2 | 94 | 9/27/2026 |
| 10.0.1 | 119 | 9/7/2026 |
| 10.0.0 | 134 | 8/24/2026 |
| 3.0.0-pre9 | 222 | 1/17/2025 |
| 3.0.0-pre8 | 195 | 12/27/2024 |
| 3.0.0-pre7 | 182 | 11/27/2024 |
| 3.0.0-pre6 | 256 | 5/20/2024 |
| 3.0.0-pre5 | 240 | 5/17/2024 |
| 3.0.0-pre4 | 258 | 4/19/2024 |
| 3.0.0-pre3 | 227 | 4/13/2024 |
| 3.0.0-pre2 | 220 | 3/31/2024 |
| 3.0.0-pre13 | 458 | 11/19/2025 |
| 3.0.0-pre12 | 189 | 5/24/2025 |
| 3.0.0-pre11 | 256 | 4/7/2025 |
| 3.0.0-pre10 | 183 | 2/28/2025 |
| 3.0.0-pre1 | 239 | 3/23/2024 |
| 2.4.0 | 426 | 4/7/2025 |
| 2.4.0-pre1 | 262 | 2/9/2024 |
### Added
- Document the historical `Cmd` module breaking changes between Fabulous 2.4.x and 10.0.1 (removed `Cmd.ofSub`/`Cmd.dispatch`, the `Cmd.OfAsync`/`Cmd.OfTask` relocations, and the two-continuation `either` signature) in `docs/guides/migration.md` (#1336, #1337, #1338, #1339).
### Changed
- Bump the `Microsoft.NET.Test.Sdk` version from `18.9.0` to `18.10.0` in `Directory.Packages.props` (Repo Assist).
- Bump `BenchmarkDotNet` from `0.14.0` to `0.15.8` and `Microsoft.NET.Test.Sdk` from `18.10.0` to `18.10.1` in `Directory.Packages.props` (Repo Assist).
- Revert the `FSharp.Core` package version floor bump from `10.1.401` back to `10.0.100` in `Directory.Packages.props`, after CI (#1351, #1354) confirmed it triggers a `NullReferenceException` in Apple's `ILStrip` post-processing tool when building the `net10.0-ios` sample target, keeping the `Microsoft.NET.Test.Sdk`/`BenchmarkDotNet` bumps intact (Repo Assist, #1355).
- Suppress the 60 `FS0044` deprecation warnings from MAUI's own `[Obsolete]` attributes on `SwitchCell`/`EntryCell`/`Page.IsBusy`/`SafeArea` by adding `#nowarn "44"` to `Views/Cells/_Cell.fs`, `EntryCell.fs`, `SwitchCell.fs`, `Views/Pages/_Page.fs`, `ContentPage.fs`, and `Views/Layouts/_Layout.fs`, ahead of the 10.0.2 release (Repo Assist, #1344).
- Replace the immutable `Set`-based subscription-diffing in `Sub.Internal.diff`/`Sub.Internal.NewSubs.calculate` with a mutable `HashSet`, avoiding repeated O(log n) tree-node allocations on every `Program` update cycle (Repo Assist, #1202).
- Optimize `StackArray3.combine` to avoid an intermediate array allocation when merging a `Few`-cased value with a `Many`-cased array, writing directly into the final result array instead of allocating via `toArray`/`Array.append` (Repo Assist, #1234).
- Bump the `Avalonia` package version from `12.1.1` to `12.1.2` in `Directory.Build.props` (Repo Assist, #1317).
- Bump the `fabulous-avalonia` template's default `Avalonia`/`Avalonia.Desktop`/`Avalonia.Android`/`Avalonia.iOS`/`Avalonia.Themes.Fluent` package versions from `11.3.0` to `12.1.1` in `templates/avalonia/**/.template.config/template.json` (@kant2002, #1321).
- Document that the `fabulous-avalonia` single-project template's `net10.0-android`/`net10.0-ios` target frameworks require the `android`/`ios` .NET workloads, and document the previously-unlisted desktop-only `fabulous-avalonia-desktop` template as a workload-free alternative, in the Avalonia tutorial, get-started guide, and templates README (Repo Assist, #1319, #1326).
- Add Windows-from-Visual-Studio debugging guidance (Solution Platform selector, MSIX-packaged vs. unpackaged apps) to the MAUI tutorial and get-started guide (#1306, #1307, #1308, #1309, #1310, #1334, #1335).
- Fix formatting and clarify instructions in the Avalonia get-started guide and tutorial (#1329, #1330, #1331).
- Replace the dead Discord "Contact us" link with a mailto link in the website header (#1313).
### Fixed
- Add unit tests for `StackArray3`'s `add`, `get`, `find`, and `combine` operations, covering the `Few`/`Many` representation transitions and error paths that previously had no test coverage (Repo Assist).
- Route exceptions thrown by the leading-edge `emit` call in `DispatchThrottle.Dispatch` to `onError`, matching the error handling already used by the timer callback and `FlushAsync`, so a throwing dispatch handler no longer crashes the caller's dispatch thread (Repo Assist).