TreeDataGridWeb.Blazor 0.2.0

There is a newer version of this package available.
See the version list below for details.
dotnet add package TreeDataGridWeb.Blazor --version 0.2.0
                    
NuGet\Install-Package TreeDataGridWeb.Blazor -Version 0.2.0
                    
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="TreeDataGridWeb.Blazor" Version="0.2.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="TreeDataGridWeb.Blazor" Version="0.2.0" />
                    
Directory.Packages.props
<PackageReference Include="TreeDataGridWeb.Blazor" />
                    
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 TreeDataGridWeb.Blazor --version 0.2.0
                    
#r "nuget: TreeDataGridWeb.Blazor, 0.2.0"
                    
#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 TreeDataGridWeb.Blazor@0.2.0
                    
#: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=TreeDataGridWeb.Blazor&version=0.2.0
                    
Install as a Cake Addin
#tool nuget:?package=TreeDataGridWeb.Blazor&version=0.2.0
                    
Install as a Cake Tool

TreeDataGridWeb.Blazor

Install TreeDataGridWeb.Blazor version 0.2.0. The package targets .NET 8/.NET 10 and bundles the real Core/Web engine and styles as local static web assets for interactive WebAssembly and Server.

Typed grid and binding

@using TreeDataGridWeb.Blazor
<TreeDataGrid TItem="Row" Items="rows" ItemsChanged="Changed" Columns="columns"
              SelectedPaths="selected" SelectedPathsChanged="SelectionChanged" />
@code {
    public sealed record Row(string Name, int Value);
    private Row[] rows = [new("First", 1), new("Second", 2)];
    private GridColumn[] columns = [new("Name", "name", "2*", true), new("Value", "value", "*", true)];
    private IReadOnlyList<string> selected = [];
    private void Changed(Row[] value) => rows = value;
    private void SelectionChanged(IReadOnlyList<string> value) => selected = value;
}

Column property names match serialized JSON casing. ChildrenProperty enables hierarchy. CellChanged exposes a typed item, model path, column and old/new values. ItemsChanged retrieves the full native DTO collection through streaming. SelectedPaths uses model paths such as 0 and 0.1; paths are not visual row indexes. ItemsRevision explicitly signals in-place source updates. Parent acknowledgements of native edits do not replace an unchanged native source.

GetItemsAsync, SetCellValueAsync, SelectPathsAsync, BeginEditAsync, CommitEditAsync, search, scrolling, CSV and view-state methods are available after Ready. Model accepts a caller-owned Core source for advanced use. Native sources and callbacks remain accessible through Module.

Razor cells

GridColumn.Template accepts BrowserFunction.RazorTemplate(id) backed by BrowserTemplate<TItem>. Register AddTreeDataGridWebBlazor and the host's RegisterTreeDataGridWebBlazor method first. The sample executes a Razor callback inside a native virtualized cell and verifies a native edit updates typed C# items.

An optional EditTemplate uses the same factory mechanism; its editor must provide an input marked data-grid-value. Keep durable edit state outside virtualized roots. Browser factories can also supply create/update/dispose hooks.

Read INTEGRATION.md for hosting, callback timing, reference ownership, streaming and releases. The wrapper preserves the underlying engine's compatibility boundaries and does not claim a generated C# replacement for every desktop API.

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 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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

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
0.2.2 88 9/14/2026
0.2.1 84 9/14/2026
0.2.0 90 9/14/2026