如何为 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 实现更改行高,但我不知道如何使用动态高度来实现。
有什么办法可以做这种动画吗?
评论正确指出了解决问题的方法。我设法通过调整内部容器的大小来制作那种动画。
我有一个包含两行的 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 实现更改行高,但我不知道如何使用动态高度来实现。
有什么办法可以做这种动画吗?
评论正确指出了解决问题的方法。我设法通过调整内部容器的大小来制作那种动画。