怎麽在backgroundWorker執行時傳遞數據
BackgroundWorker的ReportProgress()方法,有兩個重載,其中壹個有兩個參數,
ReportProgress(Int32, Object) 第壹個int32,可以用來傳遞運行進度,第二個Object可以返回妳要傳的任何數據,因為它是Object,可以接收任何類型,如果還有多個數據要傳,可以設為數組來傳。
在DoWork方法裏傳入數據
ReportProgress(Progresspercent,result);//傳入數據Progresspercent:進度,result:運行 過程中的結果.
在backgroundWorker1_ProgressChanged事件下,取出數據。
private void backgroundWorker1_ProgressChanged(object sender, ProgressChangedEventArgs e)
{
this.progressBar1.Value = e.ProgressPercentage; //此處取出的是上面傳的int32(Progresspercent)
this.textBox1.Text = e.UserState.ToString(); //此處取出的e.UserState 就是上面傳 入的Object(result)
}