gpt4 book ai didi

wpf - (WPF) 动画 ListView 项目移动

转载 作者:行者123 更新时间:2023-12-02 14:44:44 24 4
gpt4 key购买 nike

我希望在 ListView 中的项目更改位置时有一个动画,这样它就会慢慢移动到新位置。无论是在模板中还是在代码中。我尝试从(虚拟化)StackPanel 下降并覆盖 ArrangeOverride 来重新定位项目并为其设置动画。问题是我不知道该项目在更新“之前”处于什么位置,因此我可以很好地过渡到新位置。我尝试检查项目的 TranslateTransform、存储在字典中、覆盖 OnItemChanged 并存储 OldPosition/Position ..但这些都不起作用,因为项目似乎总是重新创建(从模板)。

还有其他建议吗?

最佳答案

使用FluidMoveBehavior行为,它会让你的生活变得更加轻松。

您可以通过以下方式将其应用于任何项目控件

<ItemsPanelTemplate x:Key="ItemsPanelTemplate">
<WrapPanel>
<i:Interaction.Behaviors>
<il:FluidMoveBehavior AppliesTo="Children" Duration="00:00:00.75"/>
</i:Interaction.Behaviors>
</WrapPanel>
</ItemsPanelTemplate>

您可以在随 Blend 3 一起安装的 Microsoft.Expression.Interactions.dll 中找到此行为

关于wpf - (WPF) 动画 ListView 项目移动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1317367/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com