在ListView中移动项目,如何添加动画?

时间:2014-08-19 00:46:39

标签: c# listview windows-runtime windows-phone-8.1

我的 Windows Phone 8.1运行时应用中有一个ListView,它有这样的绑定:

在XAML中:

<ListView ItemsSource="{Binding myBinding}" ... >

在代码背后:

this.defaultViewModel["myBinding"] = s; //s is an ObservableCollection.

我正在使用Move的{​​{1}}函数移动部分项目:

ObservableCollection

移动操作正在运行,但我想为其添加动画(我希望这些项目实际上开始移动到彼此的位置)

我尝试将ObservableCollection<MyItem> pi = (ObservableCollection<MyItem>)this.defaultViewModel["myBinding"]; pi.Move(5,6); 添加到ReorderThemeTransition,但它无效。

ListView

如何将此类动画实施到我的<ListView.ItemsPanel> <ItemsPanelTemplate> <VirtualizingStackPanel> <VirtualizingStackPanel.ChildrenTransitions> <TransitionCollection> <ReorderThemeTransition/> </TransitionCollection> </VirtualizingStackPanel.ChildrenTransitions> </VirtualizingStackPanel> </ItemsPanelTemplate> </ListView.ItemsPanel>

1 个答案:

答案 0 :(得分:0)

我相信你要找的代码片段是

<ListView.ItemContainerTransitions>
    <TransitionCollection>
        <AddDeleteThemeTransition/>
    </TransitionCollection>
</ListView.ItemContainerTransitions>

source

动画实际上非常微妙。