|
例えば、以下のコードに関してなのですが
Private Async Sub NumericUpDown29_ValueChanged(sender As Object, e As EventArgs) Handles NumericUpDown29.ValueChanged
CType(sender, NumericUpDown).Enabled = False
Await Task.Run(Sub()
Call FileExport()
End Sub)
CType(sender, NumericUpDown).Enabled = True
End Sub
FileExportは一カ所ではなく複数箇所で出てくるため、
上記のようにすると、
コードが長くなってしまいます。
そのため、
Private Sub NumericUpDown29_ValueChanged(sender As Object, e As EventArgs) Handles NumericUpDown29.ValueChanged
CType(sender, NumericUpDown).Enabled = False
Call FileExportAsync()
CType(sender, NumericUpDown).Enabled = True
End Sub
Private Async Sub FileExportAsync()
Await Task.Run(Sub()
Call FileExport()
End Sub)
End Sub
のようにしたいのですが、
Await Task.Run(Sub()
が終了するまえに、
Call FileExportAsync()
から抜けて
CType(sender, NumericUpDown).Enabled = True
が実行されてしまいます。
それぞれのコードで、毎回、
Await Task.Run(Sub()
End Sub)
を書く必要があるのでしょうか?
|