通常は非同期に表示されるアラート ウィンドウ (Telerik WPF) を使用しています (コードは開いている間も実行され続けます)。async/await を使用して同期させたいと考えています。
私はこれを使用していますが、そのクラスはジェネリックであり、戻り値のないプレーンだけが必要な場合のTaskCompletionSource
ようにオブジェクトを返します。Task<bool>
Task
public Task<bool> ShowAlert(object message, string windowTitle)
{
var dialogParameters = new DialogParameters { Content = message };
var tcs = new TaskCompletionSource<bool>();
dialogParameters.Closed += (s, e) => tcs.TrySetResult(true);
RadWindow.Alert(dialogParameters);
return tcs.Task;
}
そのメソッドを呼び出すコードは
await MessageBoxService.ShowAlert("The alert text.")
dialogParameters.Closed
イベントが発生するまで待機できる、同様に機能する非ジェネリックなタスクを返すにはどうすればよいですか? bool
このコードで返される を無視できることを理解しています。私はそれとは異なる解決策を探しています。