Project Description

A WPF implementation of a bindable Treemaps control.

The algorythmn is inspirated from a document published by Mark Bruls, Kees Huizing and Jarke J. vanWijk.

The goal is to display items with size relatives to a numeric value : the weight ( folder size, country sales, etc).
Applying this visualization to a disk, for example (folder/ file size) , allow you to see directly where the space is used ( see samples).

The important point is that this controls inherits from ItemsControls and use the ItemsSource property to render the elements. It means that the control is bindable, stylable, templatable...

The layout logic is implemented in a TreeMapsPanel and a SquarifiedTreeMapsPanel. Theses panels can be used independently from the TreeMaps control.

Some samples are available in the release.


  • Currently the TreeMaps control have a property that indicate the datasource property to bind the Weight from the datasource. This is not a good solution because it means that all the data must have the same property. It would be better to indicates this binding in the datatemplate... But at this point i didn't find the solution. When I create my own class that inherit from HierarchicalDataTemplate, i can't use my own property in Xaml ( got an Error 69 when compiling )

Your feedback is wellcome...

Last edited Nov 10, 2007 at 2:33 PM by woopef, version 16