RadzenTree Class

A hierarchical tree view component for displaying nested data structures with expand/collapse functionality. RadzenTree supports both inline item definition and data-binding for displaying file systems, organization charts, category hierarchies, or any tree-structured data. Organizes data in a parent-child hierarchy where items can be expanded to reveal children. Supports static definition declaring tree structure using nested RadzenTreeItem components, data binding to hierarchical data using RadzenTreeLevel components, single or multiple item selection with checkboxes, individual item or programmatic expand/collapse control, custom icons per item or data-bound icon properties, custom rendering templates for tree items, keyboard navigation (Arrow keys, Space/Enter, Home/End) for accessibility, and Change/Expand/selection events. For data binding, use RadzenTreeLevel to define how to render each hierarchy level from your data model. For checkbox selection, use AllowCheckBoxes and bind to CheckedValues.

Inheritance

Object

ComponentBase

RadzenComponent

RadzenTree

Implements

IComponent

IHandleEvent

IHandleAfterRender

Namespace: Radzen.Blazor

Assembly: Radzen.Blazor.dll

Syntax

public class RadzenTree : RadzenComponent, IComponent, IHandleEvent, IHandleAfterRender

Examples

Static tree with inline items:

<RadzenTree>
    <RadzenTreeItem Text="Documents" Icon="folder">
        <RadzenTreeItem Text="Work" Icon="folder">
            <RadzenTreeItem Text="report.pdf" Icon="description" />
        </RadzenTreeItem>
        <RadzenTreeItem Text="Personal" Icon="folder">
            <RadzenTreeItem Text="photo.jpg" Icon="image" />
        </RadzenTreeItem>
    </RadzenTreeItem>
</RadzenTree>

Data-bound tree with selection:

<RadzenTree Data=@categories AllowCheckBoxes="true" @bind-CheckedValues=@selectedCategories Change=@OnChange>
    <RadzenTreeLevel TextProperty="Name" ChildrenProperty="Children" />
</RadzenTree>
@code {
    IEnumerable<object> selectedCategories;
    void OnChange(TreeEventArgs args) => Console.WriteLine($"Selected: {args.Text}");
}

Constructors

RadzenTreelink

A hierarchical tree view component for displaying nested data structures with expand/collapse functionality. RadzenTree supports both inline item definition and data-binding for displaying file systems, organization charts, category hierarchies, or any tree-structured data. Organizes data in a parent-child hierarchy where items can be expanded to reveal children. Supports static definition declaring tree structure using nested RadzenTreeItem components, data binding to hierarchical data using RadzenTreeLevel components, single or multiple item selection with checkboxes, individual item or programmatic expand/collapse control, custom icons per item or data-bound icon properties, custom rendering templates for tree items, keyboard navigation (Arrow keys, Space/Enter, Home/End) for accessibility, and Change/Expand/selection events. For data binding, use RadzenTreeLevel to define how to render each hierarchy level from your data model. For checkbox selection, use AllowCheckBoxes and bind to CheckedValues.

Declaration
public RadzenTree()

Properties

AllowCheckBoxeslink

Specifies whether RadzenTree displays check boxes. Set to false by default.

Declaration
public bool AllowCheckBoxes { get; set; }
Property Value
Type Description
boolSpecifies whether RadzenTree displays check boxes. Set to false by default.

AllowCheckChildrenlink

Specifies what happens when a parent item is checked. If set to true checking parent items also checks all of its children.

Declaration
public bool AllowCheckChildren { get; set; }
Property Value
Type Description
boolSpecifies what happens when a parent item is checked. If set to true checking parent items also checks all of its children.

AllowCheckParentslink

Specifies what happens with a parent item when one of its children is checked. If set to true checking a child item will affect the checked state of its parents.

Declaration
public bool AllowCheckParents { get; set; }
Property Value
Type Description
boolSpecifies what happens with a parent item when one of its children is checked. If set to true checking a child item will affect the checked state of its parents.

Changelink

A callback that will be invoked when the user selects an item.

Declaration
public EventCallback<TreeEventArgs> Change { get; set; }
Property Value
Type Description
EventCallback<TreeEventArgs>A callback that will be invoked when the user selects an item.
Examples
<RadzenTree Change=@OnChange>
    <RadzenTreeItem Text="BMW">
        <RadzenTreeItem Text="M3" />
        <RadzenTreeItem Text="M5" />
    </RadzenTreeItem>
    <RadzenTreeItem Text="Audi">
        <RadzenTreeItem Text="RS4" />
        <RadzenTreeItem Text="RS6" />
    </RadzenTreeItem>
    <RadzenTreeItem Text="Mercedes">
        <RadzenTreeItem Text="C63 AMG" />
        <RadzenTreeItem Text="S63 AMG" />
    </RadzenTreeItem>
</RadzenTree>
@code {
  void OnChange(TreeEventArgs args) 
  {

  }
}

CheckedValueslink

Gets or sets the checked values. Use with @bind-CheckedValues to sync it with a property.

Declaration
public IEnumerable<object> CheckedValues { get; set; }
Property Value
Type Description
IEnumerable<object>Gets or sets the checked values. Use with @bind-CheckedValues to sync it with a property.

CheckedValuesChangedlink

A callback which will be invoked when CheckedValues changes.

Declaration
public EventCallback<IEnumerable<object>> CheckedValuesChanged { get; set; }
Property Value
Type Description
EventCallback<IEnumerable<object>>A callback which will be invoked when CheckedValues changes.

ChildContentlink

Gets or sets the child content.

Declaration
public RenderFragment ChildContent { get; set; }
Property Value
Type Description
RenderFragmentGets or sets the child content.

Collapselink

A callback that will be invoked when the user collapse an item.

Declaration
public EventCallback<TreeEventArgs> Collapse { get; set; }
Property Value
Type Description
EventCallback<TreeEventArgs>A callback that will be invoked when the user collapse an item.

Datalink

Specifies the collection of data items which RadzenTree will create its items from.

Declaration
public Collections.IEnumerable Data { get; set; }
Property Value
Type Description
Collections.IEnumerableSpecifies the collection of data items which RadzenTree will create its items from.

Expandlink

A callback that will be invoked when the user expands an item.

Declaration
public EventCallback<TreeExpandEventArgs> Expand { get; set; }
Property Value
Type Description
EventCallback<TreeExpandEventArgs>A callback that will be invoked when the user expands an item.
Examples
<RadzenTree Expand=@OnExpand>
    <RadzenTreeItem Text="BMW">
        <RadzenTreeItem Text="M3" />
        <RadzenTreeItem Text="M5" />
    </RadzenTreeItem>
    <RadzenTreeItem Text="Audi">
        <RadzenTreeItem Text="RS4" />
        <RadzenTreeItem Text="RS6" />
    </RadzenTreeItem>
    <RadzenTreeItem Text="Mercedes">
        <RadzenTreeItem Text="C63 AMG" />
        <RadzenTreeItem Text="S63 AMG" />
    </RadzenTreeItem>
</RadzenTree>
@code {
  void OnExpand(TreeExpandEventArgs args) 
  {

  }
}

ItemContentCssClasslink

Gets or sets the CSS classes added to the item content.

Declaration
public string ItemContentCssClass { get; set; }
Property Value
Type Description
stringGets or sets the CSS classes added to the item content.

ItemContextMenulink

Gets or sets the context menu callback.

Declaration
public EventCallback<TreeItemContextMenuEventArgs> ItemContextMenu { get; set; }
Property Value
Type Description
EventCallback<TreeItemContextMenuEventArgs>Gets or sets the context menu callback.

ItemIconCssClasslink

Gets or sets the CSS classes added to the item icon.

Declaration
public string ItemIconCssClass { get; set; }
Property Value
Type Description
stringGets or sets the CSS classes added to the item icon.

ItemLabelCssClasslink

Gets or sets the CSS classes added to the item label.

Declaration
public string ItemLabelCssClass { get; set; }
Property Value
Type Description
stringGets or sets the CSS classes added to the item label.

ItemRenderlink

A callback that will be invoked when item is rendered.

Declaration
public Action<TreeItemRenderEventArgs> ItemRender { get; set; }
Property Value
Type Description
Action<TreeItemRenderEventArgs>A callback that will be invoked when item is rendered.

SelectItemAriaLabellink

Gets or sets the open button aria-label attribute.

Declaration
public string SelectItemAriaLabel { get; set; }
Property Value
Type Description
stringGets or sets the open button aria-label attribute.

SingleExpandlink

Specifies whether siblings items are collapsed. Set to false by default.

Declaration
public bool SingleExpand { get; set; }
Property Value
Type Description
boolSpecifies whether siblings items are collapsed. Set to false by default.

Valuelink

Specifies the selected value. Use with @bind-Value to sync it with a property.

Declaration
public object Value { get; set; }
Property Value
Type Description
objectSpecifies the selected value. Use with @bind-Value to sync it with a property.

ValueChangedlink

A callback which will be invoked when Value changes.

Declaration
public EventCallback<object> ValueChanged { get; set; }
Property Value
Type Description
EventCallback<object>A callback which will be invoked when Value changes.

Methods

BuildRenderTreelink

Declaration
protected override void BuildRenderTree(Rendering.RenderTreeBuilder __builder)
Parameters
Type Name Description
Rendering.RenderTreeBuilder __builder

ClearSelectionlink

Clear the current selection to allow re-selection by mouse click

Declaration
public void ClearSelection()

GetComponentCssClasslink

Declaration
protected override string GetComponentCssClass()
Returns
Type Description
string

OnInitializedlink

Declaration
protected override void OnInitialized()

Reloadlink

Forces the specified item or, if item is null, all items in the tree to be re-evaluated such that items lazily created via Expand are realised if the underlying data model has been changed from somewhere else.

Declaration
public Task Reload(RadzenTreeItem item)
Parameters
Type Name Description
RadzenTreeItem item The item to be reloaded or null to refresh the root nodes of the tree.
Returns
Type Description
TaskA task to wait for the operation to complete.

SetParametersAsynclink

Declaration
public override Task SetParametersAsync(ParameterView parameters)
Parameters
Type Name Description
ParameterView parameters
Returns
Type Description
Task
An error has occurred. This app may no longer respond until reloaded. Reload 🗙