wpf アプリケーションに 3 つのストーリーボードがあります。
開始は単一のアニメーション 進行は繰り返しのアニメーション 終了も単一のアニメーション
同じ画像をアニメーション化するすべてのストーリーボード。「進行」ストーリーボードが繰り返され (別のスレッドでクエリが実行されている間)、「開始」ストーリーボードがその前にあり、「終了」アニメーションがそれに続きます。これは単純な問題だと思いました。アプリケーションの起動時に「開始」アニメーションを開始し、次に oncompleted イベント ハンドラーで進行アニメーションを開始するなどです。
しかし、うまくいきません: 進行状況のアニメーションが開始されますが、正しく表示されません (奇妙な点滅)。
これを分析するために「button1」を作成しましたが、ボタンのonclickイベントハンドラーで同じメソッドが機能することに気付きました(ストーリーボードの開始が終了した後、それを押すと、進行状況のストーリーボードが開始され、完全に表示されました)。(開始アニメーションの FillBehavior は "Stop" です。この設定がないとボタンは機能しませんが、イベント ハンドラは設定後も間違ったままです)
private void Window_Loaded(object sender, RoutedEventArgs e)
{
begin = (Storyboard)FindResource("startanimation");
progress = (Storyboard)FindResource("progressanimation");
end = (Storyboard)FindResource("stopanimation");
begin.Completed += new EventHandler(begin_Completed);
begin.Begin();
}
void begin_Completed(object sender, EventArgs e)
{
progress.Begin(); //not works
}
private void button1_Click(object sender, RoutedEventArgs e)
{
progress.Begin(); //works
}
何か案が?