Gantt Tree Data Binding Basics
This article explains the different ways to provide data to a Gantt Chart component and the properties related to data binding. Reviewing this article will explain the basics of how you can describe the hierarchy of items in your data source to the Gantt component so they can render.
For details on Value Binding and Data Binding, and the differences between them, see the Value Binding vs Data Binding article.
- The available (bindable) features of a Gantt Tree item.
- How to match fields in the model with the Gantt Tree item data bindings.
There are two modes of providing data to a Gantt Tree, and they all use the items' features. Once you are familiar with the current article, choose the data binding you wish to use more:
Flat data - a single collection of items with defined parent-child relationships. See the
Hierarchical data - separate collections of items and their child items. This is the default mode of the component. See the
Gantt Tree Item Features
The Blazor Gantt Tree provides various parameters to configure its items. Also check the Gantt public API.
||The collection of child items that will be rendered under the current item. Required only when binding to hierarchical data.|
||A unique identifier for the item. Required only for binding to flat data.|
||Identifies the parent to whom the item belongs. Required only when binding to flat data. All items with the same
||Whether the item has children. Determines whether an expand arrow is rendered next to the item in an Expandable column. Required for loading data on-demand - if you don't set it to
The properties of a Gantt Tree item match directly to a field of the model the treelist is bound to. Provide that relationship by providing the name of the field from which the corresponding information is to be taken. To do this, in the main
TelerikGantt tag, use the parameters described below:
- IdField => Id
- ParentIdField => ParentId
- HasChildrenField => HasChildren
- ItemsField => Items
- The Gantt is designed to work with a collection of strongly typed models (e.g.,
IENumerable<SomeDataModel>). If you provide an
IEnumerable<object>instead, you must set the
<GanttColumn>instances to the data type of the fields they use (e.g.,
<GanttColumn Field=@nameof(Employee.Name) FieldType="@(typeof(string))" />).