Win2D はこの関数Invalidate()
を特徴としており、呼び出されるとコントロール全体が再描画され、連続する急速な呼び出しでは、以前の呼び出しからの変更を含む 1 つの更新にマージされます。これを自分のアプリケーションで再作成しようとしていますが、この説明と完全に一致するフレームワークが見つかりません。
チャートをクリックするたびに、線が追加されます。私がやりたいことは、誰かが連続して 100 回クリックした場合、一度に 1 つずつ追加するのではなく、クリックが完了するまで待機してすべての行を一度に追加することです。同様に、ウィンドウのサイズ変更は、イベントが発生するたびにではなく、一度だけチャートを再描画する必要があります。
を使用してみSystem.Reactive
ましたが、それらのマージ/スロットリングのほとんどは以前の呼び出しを無視しているようで、OnCompleted()
「完了」しないため、イベントで Subscribe の一部を使用できません。
このような問題を解決した経験のある人はいますか? タイマーを使用して一種の遅延を作成することを検討していますが、説明どおりに機能するものが既にあるかどうかを知りたいです。