TreeMapControl.LayoutAlgorithm Property
Gets or sets a layout algorithm for arranging TreeMap items.
Namespace: DevExpress.Xpf.TreeMap
Assembly: DevExpress.Xpf.TreeMap.v19.1.dll
Declaration
Property Value
Type | Description |
---|---|
TreeMapLayoutAlgorithmBase | A TreeMapLayoutAlgorithmBase class descendant object, specifying a layout algorithm. |
Example
To customize the layout algorithm, do the following.
- Assign a newly created TreeMapLayoutAlgorithmBase class descendant object to the
TreeMapControl.LayoutAlgorithm
property. - Optionally, for all predefined layout algorithms, it is possible to specify a layout’s fill direction using the TreeMapLayoutAlgorithm.Direction property.
- In addition to the layout direction, for the SliceAndDiceLayoutAlgorithm you can change its mode using the SliceAndDiceLayoutAlgorithm.LayoutMode property.
Note
A complete sample project is available at https://github.com/DevExpress-Examples/how-to-change-the-layout-algorithm-used-by-treemap-t308988.
<dxtm:TreeMapControl x:Name="treeMap"
LayoutAlgorithm="{Binding ElementName=lbLayoutAlgorithm, Path=SelectedValue}">
<!-- endregion #LayoutAlgorithm-->
<dxtm:TreeMapControl.Colorizer>
<dxtm:TreeMapPaletteColorizer/>
</dxtm:TreeMapControl.Colorizer>
<dxtm:TreeMapItemStorage>
<dxtm:TreeMapItem Label="Americas">
<dxtm:TreeMapItem Label="United States" Value="17.418"/>
<dxtm:TreeMapItem Label="Brazil" Value="2.353"/>
</dxtm:TreeMapItem>
<dxtm:TreeMapItem Label="Europe">
<dxtm:TreeMapItem Label="Germany" Value="3.859"/>
<dxtm:TreeMapItem Label="United Kingdom" Value="2.945"/>
<dxtm:TreeMapItem Label="France" Value="2.846"/>
<dxtm:TreeMapItem Label="Italy" Value="2.147"/>
<dxtm:TreeMapItem Label="Russia" Value="1.857"/>
</dxtm:TreeMapItem>
<dxtm:TreeMapItem Label="Asia">
<dxtm:TreeMapItem Label="China" Value="10.380"/>
<dxtm:TreeMapItem Label="Japan" Value="4.616"/>
<dxtm:TreeMapItem Label="India" Value="2.049"/>
</dxtm:TreeMapItem>
</dxtm:TreeMapItemStorage>
<!--region #CloseTag-->
</dxtm:TreeMapControl>
<!--endregion #CloseTag-->
<Grid Grid.Column="1" Margin="4">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<TextBlock Grid.Row="0"
Margin="0,0,0,4"
Text="Layout Algorithm:"/>
<!--region #LayoutAlgorithmList-->
<ListBox x:Name="lbLayoutAlgorithm"
Grid.Row="1"
DisplayMemberPath="LayoutAlgorithmName"
SelectedValuePath="LayoutAlgorithm"
SelectedIndex="0">
<local:LayoutAlgorithmWarapper LayoutAlgorithmName="Slice and Dice">
<dxtm:SliceAndDiceLayoutAlgorithm/>
</local:LayoutAlgorithmWarapper>
<local:LayoutAlgorithmWarapper LayoutAlgorithmName="Squarified">
<dxtm:SquarifiedLayoutAlgorithm/>
</local:LayoutAlgorithmWarapper>
<local:LayoutAlgorithmWarapper LayoutAlgorithmName="Striped">
<dxtm:StripedLayoutAlgorithm/>
</local:LayoutAlgorithmWarapper>
</ListBox>
Related GitHub Examples
The following code snippets (auto-collected from DevExpress Examples) contain references to the LayoutAlgorithm property.
Note
The algorithm used to collect these code examples remains a work in progress. Accordingly, the links and snippets below may produce inaccurate results. If you encounter an issue with code examples below, please use the feedback form on this page to report the issue.