我正在寻找一种设计多列布局的好方法,该布局根据可用空间重排列中的控件。我有一个显示信息的标签和字段列表,有时它们包含的视图需要又高又瘦,有时又短又宽。
一个简单的解决方案是使用WrapPanel
:
<WrapPanel Orientation="Vertical">
<StackPanel Orientation="Horizontal">
<Label>Some label:</Label>
<TextBlock>Some value</TextBlock>
</StackPanel>
<StackPanel Orientation="Horizontal">
<Label>Some other label:</Label>
<TextBlock>Some bigger value</TextBlock>
</StackPanel>
<StackPanel Orientation="Horizontal">
<Label>A:</Label>
<TextBlock>B</TextBlock>
</StackPanel>
</WrapPanel>
我希望标签和值都水平排列成列,而不指定静态宽度。现在Label
s 和TextBlock
s 只是根据它们的内容来调整大小。