1

实际上,我正在使用项目控件并为其子项设置动画。问题是当通过 Add() 方法动态添加项目时,第一个项目没有得到动画,只是像往常一样显示。

我计划隐藏动态添加的孩子,然后在我想将它与动画一起使用时让它可见,这样我就可以用动画将它带入视野。

要在动态添加孩子时隐藏孩子,我需要为 Add() 方法触发某种通知或事件!我尝试使用 InotifyCollectionChanged 但这没有用。

请你的想法..你的替代建议也很感激..

提前致谢...

4

3 回答 3

0

第一个选项是检查这个问题:Animate WPF Datatemplate when item added to Listbox? .

另一种选择是创建自己的ItemsControl覆盖OnItemsChanged()方法。但这并不像第一种选择那么容易。

希望这可以帮助。

于 2009-12-29T10:33:55.247 回答
0

大家好,我找到了解决问题的方法,这可能会帮助那些遇到此类问题的人。

这可以通过使用网格作为 itemsHost 并将 itemscontrol 的子项动态添加到网格并为其设置动画来实现。由于网格仅在运行时获取其子项,因此我们可以对其进行更多控制并决定何时将其呈现在屏幕上。

于 2010-02-02T04:26:42.253 回答
0

我可能会将列表框绑定到 ViewModel 中的集合,然后直接添加到其中而不是添加到列表框。

于 2010-02-02T04:40:45.447 回答