【问题标题】:WPF WrapPanel, but fills empty space due to different size items?WPF WrapPanel,但由于不同大小的项目而填充空白空间?
【发布时间】:2021-04-10 14:15:10
【问题描述】:

我有一个“组”对象列表,每个对象都包含一个“选项”对象列表,这些对象显示为复选框。我希望这些以简洁的方式自动显示,而无需使用诸如 Grid 之类的东西手动布局 UI(这是我过去所做的,并且需要付出很多努力)。

我的群组有不同数量的选项,因此群组的容器大小在各个群组中并不相同。我使用的是 WrapPanel,但它会导致设计相当难看,因为 WrapPanel 中的每个项目似乎都被放入相同大小的容器中:

我知道我已经在 HTML/CSS/JS 中完成了这项工作,我可以让它自动压缩未使用的空间。 WPF有类似的东西吗?我的选项列表是手动创建的,但我可以在我的代码中相当轻松地添加/删除选项,因此我宁愿不必在网格视图中手动重新计算。

我看过Is there any way to occupy blank space in WrapPanel automatically?,听起来很相似,但该问题的答案没有示例,我无法弄清楚我实际上应该在答案中更改/使用什么(我尝试使用它对布局没有任何影响)。

【问题讨论】:

    标签: wpf layout


    【解决方案1】:

    我猜你使用 WrapPanel 的水平方向,所以每一行都将高度作为其元素的最大值。您的问题不是行尾的可用空间,因此您提到的解决方案对您不起作用。您可以尝试使用 WrapPanel 的垂直方向,您的 wrappanel 元素看起来具有相似的宽度,可能看起来会更好。

    【讨论】:

    • 不敢相信这么简单。我什至没有想过垂直做事......
    猜你喜欢
    • 2021-07-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-01
    • 1970-01-01
    相关资源
    最近更新 更多