DataTreeGridView component displays and manages indented item collections using a hierarchical data grid that inheris core features and behavior from Microsoft® DataGridView.
Demo
Items collection
To load and present data with DataTreeGridView control, initialize the DataSource and DataMember properties of the component, referring items representing nodes identified by these main properties: IndentLevel, and Content.
You may use either a custom type or a data table to create data item objects. If item property names are different, they should be identified using Member properties of the component. IndentLevelMember, etc. The component also supports an unbound mode that directly allows you to create data grid rows instead. In this case Member properties of the component should point to the names of the data grid column objects.
Parent nodes are determined by checking IndentLevel values of subsequent items, and can be expanded or collapsed.
Custom columns may be added to the grid the same way as within a DataGridView control.