我在 WPF 中有一个 2 行 2 列的网格。我希望每行的列宽都是独立的。我试过“自动”,但没有成功。这是一张图片以便解释:
如何使用网格完成此操作?
我在 WPF 中有一个 2 行 2 列的网格。我希望每行的列宽都是独立的。我试过“自动”,但没有成功。这是一张图片以便解释:
如何使用网格完成此操作?
如果您必须使用网格布局,那么您有几个选择:
选项 1:将每一行设为单列,然后在您想要独立列的每一行中嵌套一个网格:
XAML
<Grid>
<Grid.RowDefinitions>
<RowDefinition />
<RowDefinition />
</Grid.RowDefinitions>
<TextBlock Text="AAAAAAAAAAAAAAAAAAAA" />
<Grid Grid.Row="1">
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<TextBlock Text="BBBBBBB"">
<TextBlock Grid.Column="1" Text="CCCCCCC" />
</Grid>
</Grid>
选项 2:在行中使用 ColumnSpan:
XAML
<Grid>
<Grid.RowDefinitions>
<RowDefinition />
<RowDefinition />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<TextBlock Grid.ColumnSpan="2" Text="AAAAAAAAAAAAAAAAAAAA" />
<TextBlock Grid.Row="1" Text="BBBBBBB"">
<TextBlock Grid.Row="1" Grid.Column="1" Text="CCCCCCC" />
</Grid>
</Grid>
*这些是在没有编辑器的情况下输入的,可能需要一些调整。
两个格子?
<StackPanel Width="277">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<TextBlock Text="AAAAAAAAAAAAAAAAAAAA" Grid.Row="0" Grid.Column="0"/>
</Grid>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<TextBlock Text="BBBBBBB" Grid.Row="0" Grid.Column="0"/>
<TextBlock Text="CCCCCCC" Grid.Row="0" Grid.Column="1"/>
</Grid>
</StackPanel>