我只想在执行ProgressChanged
方法时报告DoWork
我的代码是这样的:
Private Sub CloudDataWorker_DoWork(sender As Object, e As DoWorkEventArgs) Handles CloudDataWorker.DoWork
GlobalVartions.PushtoCloud()
CloudDataWorker.ReportProgress(100, "")
End Sub
到目前为止,我所做的是不起作用。
Private Sub CloudDataWorker_ProgressChanged(sender As Object, e As ProgressChangedEventArgs) Handles CloudDataWorker.ProgressChanged
uploadStat.Text = "Uploading" & "%"
End Sub
我想使用Progressbar
作为指标,而不是使用percentage %
。
我该如何实现?谢谢。
答案 0 :(得分:1)
在您的ProgressChanged方法中,“ e”参数保存e.ProgressPercentage
中的百分比值所以您只需要像这样加载它:
uploadStat.Text = "Uploading" & e.ProgressPercentage & "%"
答案 1 :(得分:1)
经过多次尝试,我已使用此代码完成了以下操作
这是我的DoWork
方法
Private Sub CloudDataWorker_DoWork(sender As Object, e As DoWorkEventArgs) Handles CloudDataWorker.DoWork
Dim i As Integer = 1
Do While (i <= 10)
If (CloudDataWorker.CancellationPending = True) Then
e.Cancel = True
Exit Do
Else
GlobalVartions.PushtoCloud()
CloudDataWorker.ReportProgress((i * 2))
End If
i = (i + 1)
Loop
End Sub
还有我的ProgressChanged
方法
Private Sub CloudDataWorker_ProgressChanged(sender As Object, e As ProgressChangedEventArgs) Handles CloudDataWorker.ProgressChanged
uploadStat.Text = (e.ProgressPercentage.ToString + "%")
End Sub
现在效果很好。 。