如果我在xaml资源中定义了故事板动画,我该如何禁用它?
例如,如果我在UserControl.Resources部分有类似的内容:
<Storyboard x:Key="MyKey">
<DoubleAnimation Storyboard.TargetProperty="Opacity" To="1" Duration="0:0:.5" DecelerationRatio="1" />
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Visibility">
<DiscreteObjectKeyFrame KeyTime="0:0:0" Value="{x:Static Visibility.Visible}" />
</ObjectAnimationUsingKeyFrames>
</Storyboard>
有没有办法在xaml中禁用动画..?
答案 0 :(得分:1)
此处描述了XAML方式:http://msdn.microsoft.com/en-us/library/ms741997.aspx
代码背后: 您可以使用FindResource获取StoryBoard,将其转换为StoryBoard并调用Stop。
修改:有关详细了解故事板和代码背后的信息,请参阅http://www.galasoft.ch/mydotnet/articles/article-2006102701.aspx。
编辑:在触发器中使用属性:
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsActive" Value="True"/>
</MultiTrigger.Conditions>
<MultiTrigger.EnterActions>
<BeginStoryboard Storyboard="{StaticResource StoryBoard1}"/>
</MultiTrigger.EnterActions>
<MultiTrigger.ExitActions>
<BeginStoryboard Storyboard="{StaticResource StoryBoard2}"/>
</MultiTrigger.ExitActions>
</MultiTrigger>