如何每次触发故事板

How to trigger storyboard every time

我有一个故事板,可以将图像设置为可见,然后在几秒钟内使图像淡入淡出。当 属性 IsSaveDiskVisible 设置为 true 时故事板触发。当各种文本框失去焦点时,IsSaveDiskVisible 被设置为 true。

情节提要在其中一个文本框第一次失去焦点并将 IsSaveDiskVisible 设置为 true 时起作用。但是,随后尝试文本框失去焦点不会触发故事板,因为 IsSaveDiskVisible 已设置为 true。

如何在每次任何文本框失去焦点时触发故事板?

<Image x:Name="imgDiskBlack" Source="{Binding SaveDiskImg}" Stretch="None" Margin="4,0,0,0" Visibility="Collapsed">
    <Image.Style>
        <Style>
            <Style.Triggers>
                <DataTrigger Binding="{Binding IsSaveDiskVisible}" Value="true">
                    <DataTrigger.EnterActions>
                        <BeginStoryboard>
                            <Storyboard>
                                <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Visibility">
                                    <DiscreteObjectKeyFrame KeyTime="0:0:0" Value="{x:Static Visibility.Visible}" />
                                    <DiscreteObjectKeyFrame KeyTime="0:0:2.5" Value="{x:Static Visibility.Collapsed}" />
                                </ObjectAnimationUsingKeyFrames>
                                <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="Opacity">
                                    <SplineDoubleKeyFrame KeyTime="0:0:1" Value="0.0" />
                                    <SplineDoubleKeyFrame KeyTime="0:0:2" Value="1.0" />
                                </DoubleAnimationUsingKeyFrames>
                            </Storyboard>
                        </BeginStoryboard>
                    </DataTrigger.EnterActions>
                </DataTrigger>
            </Style.Triggers>
        </Style>
    </Image.Style>
</Image>

如果它绑定到 IsSaveDiskVisible,您不能在用户更改任何属性时设置 IsSaveDiskVisible = false 吗?我假设您正在尝试淡化磁盘映像以显示文件正在保存或类似的东西。如果是这样,您可以在有人进行更改后重置 属性(以便他们可以单击按钮并保存更改),或者在保存方法结束时重置它。