Как вызвать раскадровку каждый раз

У меня есть раскадровка, которая устанавливает изображение видимым, а затем в течение нескольких секунд постепенно выводит и выводит изображение. Раскадровка срабатывает, когда для свойства 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>

1 ответ

Решение

Если он связан с IsSaveDiskVisible, вы не можете установить IsSaveDiskVisible = false, когда пользователь изменяет какие-либо свойства? Я предполагаю, что вы пытаетесь скрыть образ диска, чтобы показать, что файл сохраняется или что-то в этом роде. Если это так, вы можете либо сбросить свойство после внесения изменений (чтобы они могли нажать кнопку и сохранить изменения), либо сбросить его в конце метода сохранения.

Другие вопросы по тегам