• Visualize and Edit Hierarchical Data

    Display your hierarchical list of items, such as indexed entries, directories on a disk, or headings in a document, as a tree structure. TreeView shows parent-child relationships between items in a grouped list.

  • Provide Selection of Multiple Items

    TreeView provides the most efficient way to select multiple, non-adjacent items within a long, hierarchical list. Selection is made possible using checkboxes.

  • Create Data Bound or Unbound Treeviews

    The TreeView nodes can be generated automatically from a bound data source. You may also manually create nodes in code or in XAML.

Node Customization and Selection

TreeView nodes can be implemented as images, text, or any XAML UI elements. Selection of multiple, non-adjacent items is possible by displaying checkboxes. You may optionally display connecting lines to give the appearance of a classic Windows treeview.

Hierarchical and Editable Templates

The WPF TreeView includes special templates that allow different UI elements to appear for nodes at different levels in the hierarchy, and when editing nodes.

Dragging and Dropping Nodes

Allow users to reorder the nodes by dragging and dropping. TreeView supports drag-and-drop operations within the same treeview as well as among multiple treeviews. Parent and child nodes can also be reordered programmatically.

Keyboard Navigation and Auto-Search

Use the cursor keys to navigate the nodes, expanding and collapsing them as you go, or use the auto-search feature to find specific nodes quickly and easily. With auto-search, users can just type a letter to quickly jump to a matching node.

On-Demand Loading

Instead of fully populating each node when the application starts, you can use a delayed loading technique where nodes are populated on-demand when the user expands them. This allows the application to load faster and use resources more efficiently.

Next Steps