控件可见时始终运行的WPF动画
我有一个(蹩脚的)用户要求使控件超级可见 不幸的是,这意味着一个闪烁的背景(Ug) 因此,控件是一个控件可见时始终运行的WPF动画,wpf,animation,Wpf,Animation,我有一个(蹩脚的)用户要求使控件超级可见 不幸的是,这意味着一个闪烁的背景(Ug) 因此,控件是一个边框,其中包含一个文本块,只有在极少数情况下才可见 我看过一些动画示例,它们都有一个“触发器”。最常见的情况是当用户点击某个东西时 有没有办法让动画一直运行(当然,如果控件是可见的)?在这里,RepeatBehavior=“Forever”将保持动画运行,直到停止或删除 可以在控件加载上启用“自动反转”的情况下触发彩色动画,并使其永远运行 <Border Background="Transp
边框
,其中包含一个文本块
,只有在极少数情况下才可见
我看过一些动画示例,它们都有一个“触发器”。最常见的情况是当用户点击某个东西时
有没有办法让动画一直运行(当然,如果控件是可见的)?在这里,
RepeatBehavior=“Forever”
将保持动画运行,直到停止或删除
可以在控件加载上启用“自动反转”的情况下触发彩色动画,并使其永远运行
<Border Background="Transparent">
<TextBlock Text="some text" />
<Border.Triggers>
<EventTrigger RoutedEvent="Loaded">
<BeginStoryboard>
<Storyboard>
<ColorAnimation To="SkyBlue"
Storyboard.TargetProperty="Background.Color"
RepeatBehavior="Forever"
AutoReverse="True" />
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</Border.Triggers>
</Border>
如果需要在可见性更改时触发动画,那么这里有一种方法,请注意,当IsVisible属性变为true时,动画将应用,而当IsVisible属性变为false时,动画将停止
<Border Background="Transparent">
<TextBlock Text="some text" />
<Border.Style>
<Style TargetType="Border">
<Style.Triggers>
<Trigger Property="IsVisible"
Value="true">
<Trigger.EnterActions>
<BeginStoryboard x:Name="startFlashing">
<Storyboard>
<ColorAnimation To="SkyBlue"
Storyboard.TargetProperty="Background.Color"
RepeatBehavior="Forever"
AutoReverse="True" />
</Storyboard>
</BeginStoryboard>
</Trigger.EnterActions>
<Trigger.ExitActions>
<StopStoryboard BeginStoryboardName="startFlashing" />
</Trigger.ExitActions>
</Trigger>
</Style.Triggers>
</Style>
</Border.Style>
</Border>
通常,在可见性设置为false后,如果动画仍在运行或停止,则没有可见差异