【问题标题】:Animating Border Drop Shadow Effect动画边框投影效果
【发布时间】:2019-11-07 22:54:57
【问题描述】:

我正在尝试为用户控件的通用主题内设置投影动画

给定

<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 时间线树以供跨平台使用 线程。

正确样板故事板的正确方法是什么?

【问题讨论】:

    标签: c# wpf


    【解决方案1】:

    试试这个:

    <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" />
    

    【讨论】:

    • 在 Visual Studio 2019 中这不起作用。 >> InvalidOperationException:样式中的情节提要树无法指定 TargetName。删除 TargetName 'ZetaGlow'。
    猜你喜欢
    • 2019-03-25
    • 2011-04-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-15
    • 1970-01-01
    • 1970-01-01
    • 2015-08-15
    相关资源
    最近更新 更多