#freeze
[[FrontPage]]

DispatcherTimerは、 System.Windows.Threading で使えるタイマーね。Win Formのタイマーに相当するものだと覚えておけばいいかも。

なお、あまり使わないと思うけど、プライオリティ(DispatcherPriority)も設定できるわ。

こんな感じみたい。

,メンバー名,説明
,SystemIdle,列挙値は 1 です。システムがアイドル状態のときに操作が処理されます。
,ApplicationIdle,列挙値は 2 です。アプリケーションがアイドル状態のときに操作が処理されます。
,Background,列挙値は 4 です。他のすべての非アイドル状態の操作が完了した後に操作が処理されます。
,ContextIdle,列挙値は 3 です。バックグラウンド操作が完了した後に操作が処理されます。
,DataBind,列挙値は 8 です。データ バインディングと同じ優先順位で操作が処理されます。
,Inactive,列挙値は 0 です。操作は処理されません。
,Input,列挙値は 5 です。入力と同じ優先順位で操作が処理されます。
,Invalid,列挙値は -1 です。これは無効な優先順位です。
,Loaded,列挙値は 6 です。レイアウトとレンダリングが完了した後、入力の優先順位の付いた項目が処理される直前に、操作が処理されます。具体的には、これは、Loaded イベントを発生させるときに使用されます。
,Normal,列挙値は 9 です。通常の優先順位で操作が処理されます。これが一般的なアプリケーションの優先順位です。
,Render,列挙値は 7 です。レンダリングと同じ優先順位で操作が処理されます。
,Send,列挙値は 10 です。他の非同期操作の前に操作が処理されます。これが最も高い優先順位です。
,SystemIdle,列挙値は 1 です。システムがアイドル状態のときに操作が処理されます。

* 使い方 [#k4b7ed49]

使い方はこんなところよ。

            dispatcherTimer = new DispatcherTimer(DispatcherPriority.Normal);
            dispatcherTimer.Interval = new TimeSpan(0,0,0,0,100);
            dispatcherTimer.Tick += new EventHandler(dispatcherTimer_Tick);
            dispatcherTimer.Start();

* 参考 [#mff23002]

- https://msdn.microsoft.com/ja-jp/library/system.windows.threading.dispatcherpriority(v=vs.110).aspx

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS