2017-10-28 7 views
-1

私はtextbox.textにADBの出力を印刷するには、次のコマンドを使用しはどのようにBackgroundWorkerのをvb.netで出力を得るために

Private Sub BackgroundWorker1_DoWork(sender As Object, e As DoWorkEventArgs) Handles BackgroundWorker1.DoWork 
    TextBoxSamLog.AppendText(Environment.NewLine & Adb.ExecuteAdbCommand(Adb.FormAdbCommand("sideload", TextBoxsideload.Text))) 
End Sub 

は仕事をしていませんが、出力を印刷していないと、エラーを取得し

バックグラウンドワーカーのテキストボックスに結果を印刷するにはどうすればよいですか?

+1

UIをバックグラウンドスレッドから更新することはできません。詳細はこちらを参照してください。https://stackoverflow.com/a/45571728/3740093(_から始める_ ** UIスレッド** _にアクセス) –

+0

ありがとうございました スレッドで解決しました。 – ILYA20

答えて

1

BackgroundWorkerには、UIスレッドにアクセスするための機能が組み込まれています。これは、その存在の全体的なポイントです。

バックグラウンドの作業が完了した後でUIを更新する場合は、RunWorkerCompletedイベントを処理し、e.Resultプロパティを使用してデータを渡します。バックグラウンド作業中にUIを更新する場合は、ReportProgressメソッドを呼び出し、userStateパラメータでデータを渡してProgressChangedイベントを処理します。どちらのイベントもUIスレッドで発生します。

Click here詳細については、

関連する問題