【发布时间】:2015-05-27 08:04:26
【问题描述】:
我想定义一个具有三列和相同宽度的网格(这意味着每列的宽度是网格总宽度的 1/3)。并且 Grid 必须水平拉伸。
<Border Grid.IsSharedSizeScope="True">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" SharedSizeGroup="A"/>
<ColumnDefinition Width="*" SharedSizeGroup="A"/>
<ColumnDefinition Width="*" SharedSizeGroup="A"/>
</Grid.ColumnDefinitions>
<TextBlock Grid.Column="0" Text="A"/>
<TextBlock Grid.Column="1" Text="B"/>
<TextBlock Grid.Column="2" Text="C"/>
</Border>
以上代码 xaml,三列具有相同的宽度,但网格没有水平拉伸。 谢谢你帮助我:>
【问题讨论】:
-
您是否尝试在网格或边框上设置
HorizontalAlignment="Stretch"?顺便说一句,SharedSizeGroup在这里不起作用,如果您需要在多个网格之间“同步”列宽,则使用它们。 -
如果您不想确保单独网格中的几列具有相同的宽度(如@vesan 所示),您可能会幸运地将 Grid 替换为 UniformGrid 例如
... -
@vesan,感谢您的支持,那么如何定义一个三列宽度相同且水平拉伸的网格?
-
@ScheuNZ,谢谢!它工作正常!