如何“临时”禁用ListView的添加/删除动画?
当我导航回页面并恢复该页面上ListView的ScrollViewer位置时,我想禁用它,因为如果我在页面的Loaded事件期间设置ScrollViewer位置,则动画会弄乱VerticalOffset。
加载页面并设置滚动位置后,我希望再次启用动画。
答案 0 :(得分:0)
一旦控件加载,ListView将在初始项目中设置动画。因此,您可以先清除项目容器转换,然后在控件加载后将其设置回来。
使用名为listView
的ListView,在您的Page的构造函数中,您可以执行以下操作:
listView.ItemContainerTransitions = null;
listView.Loaded += (s, e) => listView.ClearValue(ItemsControl.ItemContainerTransitionsProperty);
如果要重复使用它,可以将其捆绑到附加属性或行为中。