WPF - 哪种面板类型用于这样的布局?
WPF - which panel type to use for such a layout?
在下图中,您可以看到两个橙色矩形。它们代表主要容器。目前我正在为他们使用 Wrap-Panels。它们的内容(网格)由紫色矩形表示。
顶部的橙色矩形(环绕面板)是我目前拥有的。
底部橙色矩形(WrapPanel)代表我想要的。
WrapPanel 似乎每行每列只放置一个项目。
有什么方法可以让 Wrap Panel 在一列中堆叠多个项目?
紫色控件(网格)在运行时生成。可能有很多。
目前的布局有很多浪费 space.
我希望尽可能以最紧凑的方式排列网格。这可以认为是一个二维矩形放置优化问题(嵌套)。
是否有任何容器(可以是第三方)提供此类功能?
谢谢!
将 WrapPanel 的 Orientation
设置为 Vertical
:
<WrapPanel Orientation="Vertical" Height="100" Width="300" Background="Orange">
<Rectangle Margin="5" Width="80" Height="60" Fill="Purple"/>
<Rectangle Margin="5" Width="80" Height="50" Fill="Purple"/>
<Rectangle Margin="5" Width="80" Height="40" Fill="Purple"/>
<Rectangle Margin="5" Width="80" Height="30" Fill="Purple"/>
</WrapPanel>
在下图中,您可以看到两个橙色矩形。它们代表主要容器。目前我正在为他们使用 Wrap-Panels。它们的内容(网格)由紫色矩形表示。
顶部的橙色矩形(环绕面板)是我目前拥有的。 底部橙色矩形(WrapPanel)代表我想要的。
WrapPanel 似乎每行每列只放置一个项目。 有什么方法可以让 Wrap Panel 在一列中堆叠多个项目?
紫色控件(网格)在运行时生成。可能有很多。 目前的布局有很多浪费 space.
我希望尽可能以最紧凑的方式排列网格。这可以认为是一个二维矩形放置优化问题(嵌套)。
是否有任何容器(可以是第三方)提供此类功能?
谢谢!
将 WrapPanel 的 Orientation
设置为 Vertical
:
<WrapPanel Orientation="Vertical" Height="100" Width="300" Background="Orange">
<Rectangle Margin="5" Width="80" Height="60" Fill="Purple"/>
<Rectangle Margin="5" Width="80" Height="50" Fill="Purple"/>
<Rectangle Margin="5" Width="80" Height="40" Fill="Purple"/>
<Rectangle Margin="5" Width="80" Height="30" Fill="Purple"/>
</WrapPanel>