質問

自分でランダムに停止するように見えるストーリーボードがありますが、私の人生ではその理由を理解することはできません。

停止し、ランダムな間隔のようです。

private void CreateStoryboard(int from)
    {
        int? targetTo;
        Duration dur;
        targetTo = 150;
        dur = 150;

        Int32Animation element = new Int32Animation();
        element.From = from;
        element.To = targetTo;
        element.Duration = dur;
        Storyboard.SetTargetProperty(element, new PropertyPath(CurrentFrameProperty));
        _filmstripStoryboard = new Storyboard {SpeedRatio = this.FrameRate};
        _filmstripStoryboard.Children.Add(element);
        _filmstripStoryboard.Completed += new EventHandler(FilmstripStoryboard_Completed);
         _filmstripStoryboard.Begin(this, true);
    }

ご覧のとおり、カスタム" CurrentFrameProperty "に影響するim DP。現在のフレームを印刷するコールバックメソッドがあります。

なんらかの理由で、ストーリーボードが停止する理由がわかりません。完了したイベントは発生せず、コールバックメソッドは呼び出されなくなります。

そして、どこでもstop()を呼び出していないと確信しています。

誰かがこの問題を抱えていたり、デバッグを手伝ってくれたりしたら、とても感謝しています。

役に立ちましたか?

解決 2

それは解体者でした!ストーリーボードとアニメーションへの参照を持つオブジェクトが破壊されていたため、アニメーションはフリーズしたように見えました。

ユーザーエラー:)

他のヒント

コードは機能するはずです。 SpeedRatio = this.FrameRateが何をするかはわかりませんが、その部分を削除してコードを簡単にテストできます。私の最良の推測は、他のコードの一部がDpendencyPropertyに影響を及ぼしていること、およびマルチスレッドコードがあなたに噛み付いていることです。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top