1

TextBlock私はアニメーションで以下を持っています

<TextBlock Text="{Binding StatusMessage}" 
                  Margin="5,0,0,0" 
                  Foreground="White">
    <TextBlock.Style>
        <Style TargetType="TextBlock">
            <Style.Triggers>
                <DataTrigger Binding="{Binding IsSystemReady, 
                                               NotifyOnSourceUpdated=True, 
                                               Mode=OneWay}" 
                             Value="False">
                    <DataTrigger.EnterActions>
                        <BeginStoryboard Name="FadeOut">
                            <Storyboard>
                                <DoubleAnimation Storyboard.TargetProperty="Opacity"
                                                 From="1.0" 
                                                 To="0.0" 
                                                 Duration="0:0:3.5"/>
                            </Storyboard>
                        </BeginStoryboard>
                    </DataTrigger.EnterActions>
                </DataTrigger>
                <DataTrigger Binding="{Binding IsSystemReady, 
                                               NotifyOnSourceUpdated=True, 
                                               Mode=OneWay}" 
                             Value="True">
                    <DataTrigger.EnterActions>
                        <StopStoryboard BeginStoryboardName="FadeOut" />
                    </DataTrigger.EnterActions>
                    <Setter Property="Opacity" Value="1.0"/>
                </DataTrigger>
                <Trigger Property="Opacity" Value="0.0">
                    <Setter Property="Text" Value="Ready"/>
                </Trigger>
            </Style.Triggers>
        </Style>
    </TextBlock.Style>
</TextBlock>

アニメーションは機能しますが、終了すると (つまり、コントロールの不透明度が 0.0)、ステータス メッセージが表示されてエレガントにフェードアウトした後、自動的に準備完了状態に戻りたいと考えています。標準でこれを実行しようとしていますが、起動しませTriggerん。なぜ、どのように修正すればよいですか?

御時間ありがとうございます。

4

1 に答える 1

1

プロパティはアニメーションによってまだロックされているため、 は起動しTriggerませんが、.OpacityTextObjectAnimation

例:

<BeginStoryboard Name="FadeOut">
    <Storyboard >
        <DoubleAnimation Storyboard.TargetProperty="Opacity" From="1.0"  To="0.0" Duration="0:0:3.5"/>
        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Text" BeginTime="0:0:3.5" >
            <DiscreteObjectKeyFrame KeyTime="0:0:0" Value="Ready" />
        </ObjectAnimationUsingKeyFrames>
        <DoubleAnimation Storyboard.TargetProperty="Opacity" From="1.0"  To="1.0" BeginTime="0:0:3.5"/>
    </Storyboard>
</BeginStoryboard>

ただし、アニメーションで を に設定しても、プロパティは に設定されTextません。ReadyStatusMessageReady

于 2013-08-21T01:43:52.677 に答える