Skip to main content Skip to footer

A Flexible WPF TreeView Control

Visualize, edit, and select hierarchical data as a tree. The WPF TreeView control provides more powerful features than the standard one like auto-search, drag-and-drop, and hierarchical templates.

  • Customize the nodes with text, images, and connecting lines
  • Allow users to edit the text within the TreeView
  • Fully interactive with support for expanding, collapsing, dragging and reordering
Download Free Trial

Why Choose WPF TreeView Control?

Navigate Hierarchical Data

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.

Layout Controls

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.

TreeView Data Bound

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.

WPF TreeView Key Features

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.

Additional Features

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.

High Performance Virtualization

TreeView supports UI virtualization, which improves performance by only creating the TreeView elements needed for display. Child nodes are not created in memory until required regardless of when the data is loaded.