#425–使用SharedSizeGroup在Grid间共享列的大小(SharedSizeGroup Allows Sharing Column Sizes Across Differet Grid)



你使用ColumnDefinition SharedSizeGroup 属性使ListBox中所有的子项的列大小都一样。这是因为列表中的每一项中都有自己Grid实例,并且各个不同的Grid之间共享了列宽。

一个很普通的例子,我们可以在一个窗口中的两个Grid 控件之间共享列宽。


<StackPanel Grid.IsSharedSizeScope="True">
    <Label Content="First grid:" />
    <Grid Margin="10" ShowGridLines="True" Background="AliceBlue">
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="Auto" SharedSizeGroup="A"/>
            <ColumnDefinition/>
            <ColumnDefinition/>
        </Grid.ColumnDefinitions>
 
        <Label Grid.Column="0" Content="{Binding Thing1}"/>
    </Grid>
 
    <Label Content="Second grid:" />
    <Grid Margin="10" ShowGridLines="True" Background="AliceBlue">
        <Grid.ColumnDefinitions>
            <ColumnDefinition/>
            <ColumnDefinition Width="Auto" SharedSizeGroup="A"/>
            <ColumnDefinition/>
        </Grid.ColumnDefinitions>
 
        <Label Grid.Column="1" Content="{Binding Thing2}"/>
    </Grid>
 
    <Button Margin="10" Content="Change Thing1" Click="Button_Click" />
</StackPanel>

我们将第一个Grid中的第一个列和第二个Grid中的第二列共享列宽(将他们的SharedSizeGroup 属性值设为一样)。

然后在Thing1中添加字符,是它变宽,发现第二个Grid的第二列也同样变宽了。


原文地址:https://wpf.2000things.com/2011/11/08/425-sharedsizegroup-allows-sharing-column-sizes-across-different-grids/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值