0

私は Stackoverflow を調べましたが、これに関してはまだ何も見ていません。

現在、私はアニメーションを使用して、操作の実行中にグループボックスを点滅させています (つまり、他の作業)。残念ながら、他の操作/作業が実行されているため、点滅はスムーズではありません。ThreadHelper.DoEvents() を散在させてみましたが、これは役に立ちますが、十分ではありません。他のすべての操作を独自のスレッドに配置することなく (UI との相互作用のために複雑すぎると考えられている)、アニメーションの更新をスムーズに実行する (つまり、点滅に一貫性がない) 方法はありますか? グループボックスアニメーションの更新を独自のスレッド(またはこのようなものまたは??)に配置することをお勧めします。

アニメーションは次のとおりです。

    <Storyboard x:Key="FlashingGroupBoxForTest" RepeatBehavior="Forever">
        <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="StartTest">
            <EasingDoubleKeyFrame KeyTime="0" Value="1"/>
            <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="0"/>
            <EasingDoubleKeyFrame KeyTime="0:0:1" Value="1"/>
        </DoubleAnimationUsingKeyFrames>
    </Storyboard>

トリガーは、アニメーションの開始と停止に使用されます

        <ei:DataTrigger Binding="{Binding PerformingFocusTest, Mode=OneWay}" Value="True">
        <ei:ControlStoryboardAction Storyboard="{StaticResource FlashingGroupBoxForTest}"     
                                            ControlStoryboardOption="Play"/>
    </ei:DataTrigger>
    <ei:DataTrigger Binding="{Binding PerformingFocusTest, Mode=OneWay}" Value="False">
        <ei:ControlStoryboardAction Storyboard="{StaticResource FlashingGroupBoxForTest}"     
                                            ControlStoryboardOption="Stop"/>
    </ei:DataTrigger>

ご覧いただきありがとうございます。ご協力をお願いいたします。

一番、

バック

4

0 に答える 0