devexpress-winforms-tree-list
DevExpress WinForms TreeList
TreeList is a data-aware control that displays data as a tree, a multi-column tree-grid, or a combination of both. It supports bound mode (any traditional data source plus KeyFieldName/ParentFieldName), unbound mode (nodes created in code via AppendNode), and virtual mode (load children on demand). Because it includes grid functionality, you also get sorting, filtering, searching, summaries, in-place editing, validation, conditional formatting, and export — applied to a hierarchy.
The control lives in the DevExpress.XtraTreeList namespace; nodes are TreeListNode objects (DevExpress.XtraTreeList.Nodes), columns are TreeListColumn objects (DevExpress.XtraTreeList.Columns). It ships with the DevExpress.Win.TreeList NuGet package.
TreeList vs. Data Grid: Use
TreeListfor hierarchical / parent-child data (org charts, file trees, BOM, categories). For purely flat tabular data, use the Data Grid (GridControl) —TreeListcan show a flat list (with emptyKeyFieldName/ParentFieldName) but the grid is the recommended control for that.
When to Use This Skill
- Displaying org charts, file/folder trees, project hierarchies, BOM, or any parent-child data
- Binding flat self-referential data (records with
ID+ParentID) into a tree - Building a tree programmatically with no data source (unbound mode,
AppendNode) - Loading child nodes on demand (dynamic / virtual mode)
- Defining columns, in-place editors, and edit forms for a tree-grid
- Sorting, filtering, searching, summarizing a tree
- Applying conditional formatting, node checkboxes/images, drag-and-drop
- Printing or exporting a tree to XLSX / PDF / XML