2016-09-26 105 views
0

SharedSizeGroup="B"设置为子网格的每第二列。列变得不可改变(总是有一个宽度),width =“1 *”不起作用。是否可以使该列可调整大小,但是可以使用SharedSizeGroup="B"WPF SharedSizeGroup列不延伸

<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> 

+0

您可以在此链接中看到备注:https://msdn.microsoft.com/en-us/library/system.windows.controls.definitionbase.sharedsizegroup%28v=vs.110%29.aspx?f = 255&MSPPError = -2147217396 – zquanghoangz

回答

0

你可以设置一个网格(一排或高度)三种不同的方式列的宽度:汽车,明确的大小,或星的大小。

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

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