vb.net - 如何在 VB.NET BackgroundWorker 中使用百分比而不是 ProgressBar 控件
问题描述
我只想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
我不想使用 a ,而是使用 apercentage %
作为指标。
我怎样才能做到这一点?谢谢。
解决方案
经过太多尝试,我用这段代码完成了以下操作
这是我的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
现在效果很好。.
推荐阅读
- java - JPA spring boot,通过持久属性的反射访问字段XXXX时出错
- python - Python 3:如何以管理员身份使用 subprocess.run()(Windows 10)
- css - 使用 CSS 将文本截断到下一行
- python - Python pydub AudioSegment MemoryError
- java - 在 Java 中创建方法(初学者)
- coq - 为什么去除假设会改变归纳策略的行为?
- python - 将 Geodataframe 写入 geopandas 中的文件时出现“不支持的驱动程序”错误
- javascript - 如何从自动完成列表中删除以前选择的项目
- verilog - 将整个寄存器数组设置为零
- python - 读取股票数据时出错:“DatetimeProperties”对象没有属性“weekday_name”,“NoneType”对象没有属性“to_csv”