Dre*_*rsh 12
好的,使用带有Grid.IsSharedSizeScope="true"附加属性的ItemsControl .接下来,对于您的ItemTemplate,您可以<Grid>像往常一样使用,除非现在添加ColumnDefinitions时将SharedSizeGroup属性设置为每列唯一的名称.例如:
<ItemsControl Grid.IsSharedSizeScope="true">
<ItemsControl.ItemTemplate>
<DataTemplate>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition SharedSizeGroup="MyFirstColumn" />
<ColumnDefinition SharedSizeGroup="MySecondColumn" />
</Grid.ColumnDefinitions>
<TextBlock Grid.Column="0" Text="{Binding MyFirstProperty}"/ >
<TextBlock Grid.Column="1" Text="{Binding MySecondProperty}"/ >
</Grid>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
Run Code Online (Sandbox Code Playgroud)
有关IsSharedSizeScope和SharedSizeGroup的更多信息,请查看SDK的此部分.应该注意的是,RowDefinitions还有一个SharedSizeGroup,因此您也可以进行水平布局.