如何为 Grid RowDefinition 高度变化设置动画(当 Height="Auto" 时)

How to animate Grid RowDefinition Height change (when Height="Auto")

我有一个包含两行的 wpf 网格。第一行包含几个控件,高度设置为自动。第二行包含一个 ToggleButton,用于更改第一行控件的布局。 第一行中的控件可能具有不同的高度和上边距。因此,当按下按钮时,第一行的大小会更改为某个未知值。 像这样:

<Grid>
    <Grid.RowDefinitions>
        <RowDefinition Height="Auto"/>
        <RowDefinition Height="50"/>
    </Grid.RowDefinitions>

    <!--several controls in first row-->

    <ToggleButton x:Name="tb" Grid.Row="1" Content="Collapse"/>
</Grid>

我想制作按下按钮时第一行平滑高度变化的动画。 我读到可以通过 ObjectAnimationUsingKeyFrames 实现更改行高,但我不知道如何使用动态高度来实现。

有什么办法可以做这种动画吗?

评论正确指出了解决问题的方法。我设法通过调整内部容器的大小来制作那种动画。