WrapPanel
Interfaces have varying requirements. Often controls must be positioned in exactly one location. But sometimes controls should wrap, like text, and always be visible.
The WPF WrapPanel
offers the ability to wrap elements like text. This can solve some otherwise difficult UI problems.
Please create a WPF project and drag a WrapPanel
to the Window area. I removed the "Width" attribute and added the "HorizontalAlignment
" attribute. I set it to "Stretch".
Button
elements to the WrapPanel
. These become sub-controls. I adjusted the Content, Margin
and added some Padding.WrapPanel
"wraps" the Button
elements as though they are text.<Window x:Class="WpfApplication19.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="MainWindow" Height="350" Width="525"> <Grid> <WrapPanel HorizontalAlignment="Stretch" Height="299" Margin="10" VerticalAlignment="Top"> <Button Content="Button 1" Width="75" Margin="10" Padding="10"/> <Button Content="Button 2" Width="75" Margin="10" Padding="10"/> <Button Content="Button 3" Width="75" Margin="10" Padding="10"/> <Button Content="Button 4" Width="75" Margin="10" Padding="10"/> </WrapPanel> </Grid> </Window>
StackPanel
For another control that can arrange sub-controls, consider a StackPanel
. In WPF it is important to have a way to automatically arrange controls.
For a fast, and easy-to-maintain WPF interface
, WrapPanel
may be helpful. Controls are hidden less often on narrow windows or parts of windows.