【发布时间】:2020-04-30 23:48:08
【问题描述】:
有没有什么方法可以使用 WPF Wrappanel 获得这种布局?图片中的B和C在水平模式下要垂直对齐,在垂直模式下要水平对齐。必须保留字母方向。 在图片中,从 [水平] 到 [垂直]:
我试过了:
<wrappanel>
<A/>
<wrappanel>
<B/><C/>
</wrappanel>
</wrappanel>
但它的行为是不可预测的。提前谢谢你。
【问题讨论】:
-
有理由不使用网格吗?
-
你不能只使用 Grid,设置列和行,并将 A 上的 columnSpan/rowSpan 设置为 2 吗?
-
我发现的独特方式:在 SizeChanged 事件中添加代码:
if (this.Height > this.Width) {wrappanel.Orientation = Orientation.Horizontal} else {wrappanel.Orientation = Orientation.Vertical} -
@Clemens no:网格将 B 和 C 限制在行或列中。
-
@Zeronader 问题不是A,而是B和C。