WPF SharedSizeGroup列不会拉伸

时间:2016-09-26 09:11:18

标签: c# wpf

SharedSizeGroup="B"设置为子网格的每个第二列。列变得不可更改(始终具有一个宽度)并且width =“1 *”不起作用。是否可以使该列重新调整大小,但使用SharedSizeGroup="B"

<Window x:Class="WpfApplication23ColumnsGroup.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="MainWindow" Height="350" Width="525">
<Grid Grid.IsSharedSizeScope="True">
    <Grid Height="100">
        <Grid.RowDefinitions>
            <RowDefinition></RowDefinition>
            <RowDefinition></RowDefinition>
            <RowDefinition></RowDefinition>
        </Grid.RowDefinitions>
        <Grid Grid.Row="0">
            <Grid.ColumnDefinitions>
                <ColumnDefinition SharedSizeGroup="A"></ColumnDefinition>
                <ColumnDefinition Width="1*" SharedSizeGroup="B"></ColumnDefinition>
                <ColumnDefinition></ColumnDefinition>
            </Grid.ColumnDefinitions>
            <Label Content="Test"></Label>
            <TextBox Grid.Column="1" MinWidth="120" MaxWidth="240"></TextBox>
            <TextBox Grid.Column="2" MinWidth="120" MaxWidth="240"></TextBox>
        </Grid>
        <Grid Grid.Row="1">
            <Grid.ColumnDefinitions>
                <ColumnDefinition SharedSizeGroup="A"></ColumnDefinition>
                <ColumnDefinition SharedSizeGroup="B"></ColumnDefinition>
                <ColumnDefinition></ColumnDefinition>
            </Grid.ColumnDefinitions>
            <Label Content="TestTestTest"></Label>
            <TextBox Grid.Column="1"></TextBox>
            <TextBox Grid.Column="2"></TextBox>
        </Grid>
        <Grid Grid.Row="2">
            <Grid.ColumnDefinitions>
                <ColumnDefinition SharedSizeGroup="A"></ColumnDefinition>
                <ColumnDefinition SharedSizeGroup="B"></ColumnDefinition>
                <ColumnDefinition></ColumnDefinition>
            </Grid.ColumnDefinitions>
            <Label Content="TestTestTestTestTestTest"></Label>
            <TextBox Grid.Column="1"></TextBox>
            <TextBox Grid.Column="2"></TextBox>
        </Grid>
    </Grid>
</Grid>

1 个答案:

答案 0 :(得分:0)

您可以通过三种不同的方式设置网格中列的宽度(或行的高度):自动,显式大小或星号大小。

当您使用SharedSizeGroup属性将多个列(或行)设置为相同的宽度(或高度)时,用于设置列宽(或行高)的方法会影响最终大小,如下所示: ◾Star尺寸 - 不尊重,视为自动 ◾绝对大小调整 - 优先于自动,列设置为最大显式宽度 ◾自动调整大小 - 如果所有列都是自动,则将大小设置为适合最大内容。如果任何列使用显式宽度,则显式宽度值优先

查看此处的链接以获取更多信息。 https://wpf.2000things.com/tag/sharedsizegroup/