C# 一个接一个地为TreeView项目设置动画?
同样,我有我的TreeView的TreeViewItem动画,它使用C# 一个接一个地为TreeView项目设置动画?,c#,wpf,silverlight,xaml,animation,C#,Wpf,Silverlight,Xaml,Animation,同样,我有我的TreeView的TreeViewItem动画,它使用TreeViewItem.Loaded来触发动画: <Style TargetType="{x:Type TreeView}"> <Style.Resources> <Style TargetType="{x:Type TreeViewItem}"> <Style.Triggers> <E
TreeViewItem.Loaded
来触发动画:
<Style TargetType="{x:Type TreeView}">
<Style.Resources>
<Style TargetType="{x:Type TreeViewItem}">
<Style.Triggers>
<EventTrigger RoutedEvent="TreeViewItem.Loaded">
<BeginStoryboard>
<Storyboard>
<DoubleAnimation Storyboard.TargetProperty="Opacity"
From="0" To="1" BeginTime="00:00:00" Duration="00:00:01" FillBehavior="Stop"/>
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</Style.Triggers>
</Style>
</Style.Resources>
</Style>
但是现在,当TreeView展开TreeViewItem时,所有TreeViewItem都会被加载,并且所有这些都会同时触发动画
有没有办法让我把他们一个接一个地动画化?因此,第一项淡入,然后是第二项
编辑:
我刚刚发现,在给定的解决方案中:
A.创建一个动画不透明度的故事板,并将其应用于
项目模板
B.使用后台线程上的计时器将项目逐个添加到绑定集合中
我想知道这是唯一的解决办法吗 那么,你的意思是,当节点的collectiove父节点展开时,你想一个接一个地设置节点不透明度的动画吗?@AngelWPF是的,这不可能吗?除非我真的喜欢另一个解决方案。使用计时器一个接一个地添加它们?我现在推荐解决方案B。