WPF panels are layout containers. Each
Panel provides its own layout logic; combining them in various ways allows the creation of a complex yet flexible user interface. The built-in panels, such as
Grid, StackPanel, and
Canvas seem to provide everything we need to create a conceivable user interface. Sometimes, however, there is a need to go beyond the built-in panels, to create some other unique way to lay out elements. Although everything is possible using transforms, using a custom panel has its benefits, one of which is ease of use. Other benefits include the ability to use the panel in an unorthodox way, such as with the
ItemsPanel property of an
ItemsControl and its derivatives.
In this recipe, we'll create a custom ...