如何解决用于 Storyboard 的 WPF eventtrigger 在代码隐藏但不是点击时出错
RoutedEventArgs args = new RoutedEventArgs(ContainorSelector.ClickEvent);
fullTopLeftButtonTopButtonMain.RaiseEvent(args);
system.invalidOperationException: '找不到名称'ContainorSelectorStyleControlTemplateBorderDropShadowEffect'在'System.Windows.Controls.ControlTemplate'的名称范围内。'
错误是从法语翻译过来的。当我单击界面中的自定义按钮时,代码正在工作。
我应该如何从背后的代码触发故事板?
<StackPanel Margin="14" Name="fullMain" Visibility="Collapsed">
<local:ContainorSelector Style="{StaticResource ContainorSelectorStyle}" Background="Transparent" Height="192" Width="336" RenderTransformOrigin="0.5 0.5" x:Name="fullTopLeftButtonTopButtonMain" Click="topLeftSelection">
</local:ContainorSelector>
</StackPanel>
<Style x:Key="ContainorSelectorStyle" targettype="{x:Type views:ContainorSelector}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate targettype="{x:Type views:ContainorSelector}">
<Border
x:Name="ContainorSelectorStyleControlTemplateBorder"
Width="{TemplateBinding Width}"
Height="{TemplateBinding Height}"
Background="{TemplateBinding Background}"
RenderTransformOrigin="0.5 0.5" BorderBrush="{StaticResource Brush_primaryBrush}" BorderThickness="2">
<Border.Effect>
<DropShadowEffect x:Name="ContainorSelectorStyleControlTemplateBorderDropShadowEffect" ShadowDepth="0" Color="White" Opacity="0" BlurRadius="0"/>
</Border.Effect>
<Border.RenderTransform>
<ScaleTransform x:Name="ContainorSelectorStyleControlTemplateBorderScaleTransform" ScaleX="1" ScaleY="1"/>
</Border.RenderTransform>
</Border>
<ControlTemplate.Triggers>
<EventTrigger RoutedEvent="Click">
<EventTrigger.Actions>
<BeginStoryboard Name="BeginStoryboard">
<Storyboard>
<ColorAnimation
To="White"
From="#FF03004B"
Storyboard.Target="{Binding Source={RelativeSource Mode=TemplatedParent},Path=Effect.DropShadowEffect}"
Storyboard.TargetProperty="Effect.DropShadowEffect.Color"
FillBehavior="Stop"
Duration="0:0:2"
AutoReverse="True"
RepeatBehavior="Forever">
<ColorAnimation.EasingFunction>
<QuadraticEase></QuadraticEase>
</ColorAnimation.EasingFunction>
</ColorAnimation>
<DoubleAnimation
To="20"
From="0"
Storyboard.Target="{Binding Source={RelativeSource Mode=TemplatedParent},Path=Effect.DropShadowEffect}"
Storyboard.TargetProperty="Effect.DropShadowEffect.BlurRadius"
FillBehavior="Stop"
Duration="0:0:2"
AutoReverse="True"
RepeatBehavior="Forever">
<DoubleAnimation.EasingFunction>
<QuadraticEase></QuadraticEase>
</DoubleAnimation.EasingFunction>
</DoubleAnimation>
<DoubleAnimation
To="1.0"
From="1.0"
Storyboard.Target="{Binding Source={RelativeSource Mode=TemplatedParent},Path=Effect.DropShadowEffect}"
Storyboard.TargetProperty="Effect.DropShadowEffect.Opacity"
FillBehavior="Stop"
Duration="0:0:2"
AutoReverse="True"
RepeatBehavior="Forever">
<DoubleAnimation.EasingFunction>
<QuadraticEase></QuadraticEase>
</DoubleAnimation.EasingFunction>
</DoubleAnimation>
<DoubleAnimation
To="1.1"
From="0.9"
Storyboard.Target="{Binding Source={RelativeSource Mode=TemplatedParent},Path=RenderTransform.ScaleTransform}"
Storyboard.TargetProperty="ScaleTransform.ScaleX"
FillBehavior="Stop"
Duration="0:0:2"
AutoReverse="True"
RepeatBehavior="Forever">
<DoubleAnimation.EasingFunction>
<QuadraticEase></QuadraticEase>
</DoubleAnimation.EasingFunction>
</DoubleAnimation>
<DoubleAnimation
To="1.1"
From="0.9"
Storyboard.Target="{Binding Source={RelativeSource Mode=TemplatedParent},Path=RenderTransform.ScaleTransform}"
Storyboard.TargetProperty="ScaleTransform.ScaleY"
FillBehavior="Stop"
Duration="0:0:2"
AutoReverse="True"
RepeatBehavior="Forever">
<DoubleAnimation.EasingFunction>
<QuadraticEase></QuadraticEase>
</DoubleAnimation.EasingFunction>
</DoubleAnimation>
</Storyboard>
</BeginStoryboard>
</EventTrigger.Actions>
</EventTrigger>
<EventTrigger RoutedEvent="Deactivate">
<StopStoryboard BeginStoryboardName="BeginStoryboard"/>
</EventTrigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。