BackgroundWorker
DoWork
からに値を渡すにはどうすればよいBackgroundWorker
Completed
ですか? BackgroundWorker
Completed
によって呼び出されないのでBackgroundWorker
DoWork
、 a を宣言する以外にこれを行う方法がわかりませんpublic variable
。本質的に、変数 fromBackgroundWorker
Completed
を介して受け入れたいと思います。ByVal
BackgroundWorker
DoWork
質問する
3298 次
1 に答える
3
関数を宣言するときDoWork
は、いくつかの便利な引数が組み込まれていることに注意してください。
Private Sub backgroundWorker1_DoWork(sender As Object, e As DoWorkEventArgs) _
Handles backgroundWorker1.DoWork
RunWorkerCompleted
また、 handlerの同様の引数にも注意してください。
Private Sub backgroundWorker1_RunWorkerCompleted(ByVal sender As Object, _
ByVal e As RunWorkerCompletedEventArgs) _
Handles backgroundWorker1.RunWorkerCompleted
重要なことに、 にアクセスe.Result
できます。これは、 内の任意のオブジェクトにすることができます。メソッドが完了するRunWorkerCompletedEventArgs
と、後者は前者に渡されるため、ワーカー メソッドの最後に set :e.Result
DoWorkEventArgs
e.Result = myResult
次に、RunWorkerCompleted
ハンドラーで次の方法でもアクセスできます。
if e.Result = (whatever) then
.... etc
参照 :
于 2013-07-30T00:46:33.407 に答える