一个GridSplitter 允许用户通过拖动分隔条改变行或者列的大小,SharedSizeGroup 属性运行多个行或者列自动拥有同样的大小。你可以将他们合并在一起,允许用户拖动改变一个列或者行的大小,而另外的行或者列自动和它保持一样的大小。
下面的例子中,用户可以拖动任何一个分隔条,同时改变左右两列的宽度。
<Grid Grid.IsSharedSizeScope="True">
<Grid.ColumnDefinitions>
<ColumnDefinition SharedSizeGroup="A" Width="Auto"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition SharedSizeGroup="A" Width="Auto"/>
</Grid.ColumnDefinitions>
<Label Content="Left" Background="Azure" Grid.Column="0"/>
<Label Content="Middle" Background="Lavender" Grid.Column="2"/>
<Label Content="Right" Background="Moccasin" Grid.Column="4"/>
<GridSplitter Grid.Column="1" Width="8" Background="DarkSlateBlue"
HorizontalAlignment="Center" VerticalAlignment="Stretch"/>
<GridSplitter Grid.Column="3" Width="8" Background="DarkSlateBlue"
HorizontalAlignment="Center" VerticalAlignment="Stretch"/>
</Grid>
拖动前:
拖动左边的分隔条,右边的列变宽了。
拖动右边的分隔条,左边变宽了。