将新项添加到WPF ListBox时的滑动效果

时间:2010-02-15 22:51:24

标签: wpf listbox observablecollection effect

我有一个WPF ListBox控件,它显示RSS提要的项目。我偶尔会检查RSS源的来源以获取新项目。一旦我检测到一个新项目,我将它添加到observable集合,立即将新项目添加到ListBox显示。

有没有办法从顶部“滑入”新项目,按下现有项目?我怎么会达到这样的效果?可以使用ListBox完成,还是需要求助于我自己的容器,例如StackPanel和动画,例如以编程方式添加新控件的高度?

2 个答案:

答案 0 :(得分:5)

我刚刚发布了一个与你的问题非常相似的问题的答案。

WPF how to animate a list of components

答案 1 :(得分:2)

可以使用ListBox完成。使用ItemContainerStyle为绑定为您创建的ListBoxItem设置样式:此样式可以包括动画,例如通过将Loaded事件的EventTrigger添加到Style.Triggers并进行转换。例如,在触发操作中,您可以设置高度的动画,以便项目扩展到位,或者如果高度未知,您可以将样式设置为ScaleTransform,并在触发操作中为该变换的ScaleY设置动画,从0到1。 / p>