禁用ListView的“暂时”添加/删除项目动画

时间:2016-10-24 15:09:37

标签: c# uwp

如何“临时”禁用ListView的添加/删除动画?

当我导航回页面并恢复该页面上ListView的ScrollViewer位置时,我想禁用它,因为如果我在页面的Loaded事件期间设置ScrollViewer位置,则动画会弄乱VerticalOffset。

加载页面并设置滚动位置后,我希望再次启用动画。

1 个答案:

答案 0 :(得分:0)

一旦控件加载,ListView将在初始项目中设置动画。因此,您可以先清除项目容器转换,然后在控件加载后将其设置回来。

使用名为listView的ListView,在您的Page的构造函数中,您可以执行以下操作:

listView.ItemContainerTransitions = null;
listView.Loaded += (s, e) => listView.ClearValue(ItemsControl.ItemContainerTransitionsProperty);

如果要重复使用它,可以将其捆绑到附加属性或行为中。