Advanced TreeView control included with DotNetBar for Windows Forms is designed from ground up to replace standard TreeView control and provide additional advanced functionality like multi-selection, multi-column and styling support. Out of box it provides great looking Office 2007 style and per-node customization for background color, text-color etc.
In heart of Advanced TreeView control is the tree Node. Each node in Advanced TreeView consist of one or more cells.
Each cell can render any combination of Image, Text and Check-Box/Radio Button. You can also host any Windows Forms control
in cells. Cell text supports our high-speed text-markup that allows extensive text formatting using html like markup.
Image below shows following Advanced TreeView control features:
Advanced TreeView control supports multiple columns with fixed and relative column width. Using relative column width
you can ensure that all columns fit the control width and are also automatically adjusted if control width changes.
Column width can be changed by end-user, but that functionality can be disabled if desired.
Image below shows an example of how multiple column support can be used to create advanced looking data presentations.
Additionally separate columns (with column header visible or not) can be defined for child nodes. For example you can easily create trees like this one:
Advanced TreeView control includes support for data-binding to standard VS.NET data sources including arrays. The control will automatically create intelligent human readable column headers based on your column names. For example, FIRST_NAME filed name will receive column header 'First Name' or LastName field will receive column header 'Last Name'. You can also explicitly define columns, their headers and widths. Image below shows data-binding in action:
Data-Binding support in Advanced TreeView will change the appearance of the control so it looks like a grid when no grouping is specified. Control can automatically create hierarchical presentation of your flat data if you specify the field or property names grouping should be based on. This is done by simply setting GroupingMembers property with comma separated list of the field names you want control to group data by. It will automatically do all the work for you.
While GroupingMembers property is used to group data by value in tree, as alternative you can set ParentFieldNames property to the id and parent id that you want to use to create your tree. For example if your table represents departments, you would have DepartmentId field which uniquely identifies a department, and ParentDepartmentId field which identifies parent department if any. In such setup you would set ParentFieldNames property to DepartmentId,ParentDepartmentId to create tree from flat table or list data source.
Check out TreeControl sample included with the DotNetBar for an demo of control's features.
Tree control can represent data in ListView style Tile view as well. Switching the active view is done by simply changing View property. Here is screen-shot from sample included:
Tile view is very powerful when combined with data-binding and auto-grouping support that tree control includes. Following screen-shot, also from the sample application included with the control, shows data-binding in tile view:
Download fully functional trial of DotNetBar Suite for Windows Forms now and experience how easy it is to create professional looking applications.