WPF为什么当最后一行是*时所有行高都在扩大

时间:2015-12-15 13:56:14

标签: wpf

我有一个包含多个列和行的表单,如下所示:

<Grid.ColumnDefinitions>
    <ColumnDefinition Width="120" />
    <ColumnDefinition Width="280" />
    <ColumnDefinition Width="120" />
    <ColumnDefinition Width="280" />
    <ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
    <RowDefinition Height="20" />
    <RowDefinition Height="30" />
    <RowDefinition Height="30" />
    <RowDefinition Height="30" />
    <RowDefinition Height="30" />
    <RowDefinition Height="30" />
    <RowDefinition Height="30" />
    <RowDefinition Height="35" />
    <RowDefinition Height="*" />
</Grid.RowDefinitions>

然后我有一个跨越列和行的StackPanel:

<StackPanel Name="foo" Margin="0,0,0,0" Grid.Column="2" Grid.ColumnSpan="3" Grid.Row="2" Grid.RowSpan="7"></StackPanel>

当StackPanel“foo”包含导致总高度超过所有行组合的项目时,我只希望扩展最后一行的高度。相反,所有行高度均匀扩展,在控件之间创建了大量空间。

在“foo”填充数据之前: enter image description here

“foo”填充数据后: enter image description here

我如何对此进行编码,以便只有最后一行(height =“*”)会扩展,其他行高度保持不变?

0 个答案:

没有答案