我还是WPF的新手,不过我正试图为投影设置动画
作为上下文,这是用户控件的通用主题
给出
<Border x:Name="PART_ClearBorder"
<Border.Effect>
<DropShadowEffect ShadowDepth="2" />
</Border.Effect>
里面
<ControlTemplate.Triggers>
我有
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition SourceName="PART_Clear" Property="IsMouseOver" Value="True" />
<Condition Property="HasText" Value="True" />
</MultiTrigger.Conditions>
<Setter TargetName="PART_Clear" Property="Foreground" Value="{StaticResource ClearHighlightBrush}" />
<MultiTrigger.EnterActions>
<BeginStoryboard>
<Storyboard>
<DoubleAnimation AutoReverse="True"
Duration="0:0:0.5"
From="0"
Storyboard.TargetName="{Binding ElementName=PART_ClearBorder}"
Storyboard.TargetProperty="(Effect).(DropShadowEffect.ShadowDepth)"
To="30" />
</Storyboard>
</BeginStoryboard>
</MultiTrigger.EnterActions>
</MultiTrigger>
注意重要的部分是尝试定位ShadowDepth属性的双动画
我在运行项目时抛出System.Windows.Markup.XamlParseException
我也在xaml主窗体中获得下划线
错误2无法冻结此Storyboard时间轴树以供使用 线程。
我确信这很简单,好像我不是正确地将故事板镀在锅上
任何线索
答案 0 :(得分:2)
试试这个:
<Border x:Name="PART_ClearBorder" >
<Border.Effect>
<DropShadowEffect x:Name="dropEffect" ShadowDepth="2" />
</Border.Effect>
和你的故事板
<DoubleAnimation AutoReverse="True"
Duration="0:0:0.5"
From="0"
Storyboard.TargetName="dropEffect"
Storyboard.TargetProperty="ShadowDepth"
To="30" />