現在のスレッドでコードの実行をブロックする方法は? WindowsフォームのようなものShowDialog()メソッド:UWPでコード実行をブロックするUWPタスク
int a = 1;
Form2 f2 = new Form2();
f2.ShowDialog();
int b = 2;
カスタムメッセージボックスコントロールを作成しました。この機能を実装する必要があります。
現在のスレッドでコードの実行をブロックする方法は? WindowsフォームのようなものShowDialog()メソッド:UWPでコード実行をブロックするUWPタスク
int a = 1;
Form2 f2 = new Form2();
f2.ShowDialog();
int b = 2;
カスタムメッセージボックスコントロールを作成しました。この機能を実装する必要があります。
PushFrame
バージョンの代わりにasync/await
バージョンを実装するようにしてください。
については、this articleをご覧ください。しかし、これはもはやUWPでサポートされなくなります。
async/await
のバージョンを実装します。あなたのShowDialog
メソッドでTask
またはGetAwaiter
メソッドを持つ他のクラスを返す必要があります。次に、タスクを実行して、AutoResetEvent
/ManualResetEvent
を使用してWaitOne
を実行します。 Closed
のイベントでCustomMessageBox
、Set
、AutoResetEvent
/ManualResetEvent
をTask
に返すようにしてください。その後、あなたのShowDialog
はあなたの先に続きますawait.
Form2には 'OnClosed'イベントが必要です。クローズ後に実行したいコードを 'OnClosed'に移動することができます。 – AVK