Windows Phone 8.1 - 对列表视图项进行动画处理

本文关键字:动画 处理 视图 列表 Phone Windows | 更新日期: 2023-09-27 18:34:47

我有一段工作得很好的代码:当触发时,LstDevices ListView在1秒内变得透明。

    private void DoAnimation()
    {
        Storyboard s = new Storyboard();
        DoubleAnimation doubleAnimation = new DoubleAnimation();
        doubleAnimation.To = 0;
        doubleAnimation.Duration = new Duration(TimeSpan.FromMilliseconds(1000));
        Storyboard.SetTarget(doubleAnimation, LstDevices);
        Storyboard.SetTargetProperty(doubleAnimation, "Opacity");
        s.Children.Add(doubleAnimation);
        s.Begin();
    }

事实是,我需要这个列表视图来做 2 件不同的事情:

1( 对列表视图进行动画处理,以便它应该通过移出屏幕来消失,而不是变得不可见。2(下一步,如果我滑动单个项目,则单个项目应通过移出屏幕而消失。

事实是,我找不到修改需要移动的项目的 X 和 Y 位置的属性。有人知道吗?

Windows Phone 8.1 - 对列表视图项进行动画处理

我认为使用带有

DoubleAnimation的TranslateTransform是最简单的。 您可以使用 DoubleAnimation 随时间推移更改 X 和 Y 值,以提供移出屏幕的外观。

DoubleAnimation doubleAnimation = new DoubleAnimation();     
itemToAnimate.RenderTransform = (Transform)new TranslateTransform();   

然后当我必须设定目标时

Storyboard.SetTarget((Timeline)doubleAnimation, (DependencyObject)itemToAnimate.RenderTransform);