WPF树视图 - 我想动画的节点的扩展 [英] Wpf treeview - i want to animate the expansion of the nodes
本文介绍了WPF树视图 - 我想动画的节点的扩展的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有希望在节点扩展到动画数据绑定的树状视图。
该动画应垂直工作。我如何能做到这一点任何想法?
I have a databound treeview that i want to animate when the nodes are expanded. The animation should work vertically. Any ideas on how I could do that?
推荐答案
有关树状下载默认样式,并将其应用到您的TreeView控件,然后更改/添加此XAML code到TreeView风格:
Download default style for treeview and apply it to your treeview control, then change/add this xaml code to the treeview style:
<!-- change item presenter to include a layout transform -->
<ItemsPresenter x:Name="ItemsHost">
<ItemsPresenter.LayoutTransform>
<ScaleTransform ScaleY="1" />
</ItemsPresenter.LayoutTransform>
</ItemsPresenter>
<!-- Add this to control template triggers -->
<Trigger Property="IsExpanded" Value="true">
<Trigger.EnterActions>
<BeginStoryboard>
<Storyboard>
<DoubleAnimation Storyboard.TargetName="ItemsHost"
Storyboard.TargetProperty="LayoutTransform.ScaleY"
To="1"
Duration="0:0:0.3" />
<DoubleAnimation Storyboard.TargetName="ItemsHost"
Storyboard.TargetProperty="Opacity"
To="1"
Duration="0:0:0.5" />
</Storyboard>
</BeginStoryboard>
</Trigger.EnterActions>
<Trigger.ExitActions>
<BeginStoryboard>
<Storyboard>
<DoubleAnimation Storyboard.TargetName="ItemsHost"
Storyboard.TargetProperty="LayoutTransform.ScaleY"
To="0"
Duration="0:0:0.3" />
<DoubleAnimation Storyboard.TargetName="ItemsHost"
Storyboard.TargetProperty="Opacity"
To="0"
Duration="0:0:0.5" />
</Storyboard>
</BeginStoryboard>
</Trigger.ExitActions>
</Trigger>
<!-- comment this code -->
<!--Setter TargetName="ItemsHost"
Property="Visibility"
Value="Collapsed"/-->
这篇关于WPF树视图 - 我想动画的节点的扩展的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文