3

結果を返さなければならない API イベントがあったとします。私がしなければならない計算は、コントロールを作成する非同期メソッドを使用します (UI スレッドで実行する必要があります)。

private async void API_QueryControl(object sender, APIEventArgs e)
{
e.Result = await CreateControl();
}

private async Task<Control> CreateControl()
{
await Task.Delay(1000);
return new Panel();
}

結果を設定する前に API_QueryControl が生成されるため、これは明らかに機能しません。私は API を制御できません。つまり、イベントを変更することはできません。結果を待つイベントを取得するにはどうすればよいですか?

4

1 に答える 1