WinRT平滑网格.列更改动画

本文关键字:动画 平滑 网格 WinRT | 更新日期: 2023-09-27 18:09:38

我使用以下代码将ListView的位置从一列更改为另一列:

<Grid.Resources>
  <Storyboard x:Name="myStoryboard">
    <FadeOutThemeAnimation TargetName="detailItems" />
    <ObjectAnimationUsingKeyFrames Storyboard.TargetName="detailItems2"
                                   Storyboard.TargetProperty="(Grid.Column)">
      <DiscreteObjectKeyFrame KeyTime="0"
                              Value="1" />
    </ObjectAnimationUsingKeyFrames>
  </Storyboard>
</Grid.Resources>

这个可以工作,但是,没有动画,它只是改变列。我希望它有一种翻译动画

谢谢!

WinRT平滑网格.列更改动画

这不能仅仅通过改变(Grid.Column)

你可以做的是动画RenderTransform属性(使用TranslateTransform作为它的实例)。

使用各种关键帧动画TranslateTransform,动画完成后,将TranslateTransform重置为0,并更改Grid.Column.