我有几个大文件正在处理中,我使用backgroundWorker1.ReportProgress(percent)
来报告每个文件完成时的进度。但是现在我想要有第二个进度条来报告每个文件在进行处理时的进度(并重置下一个文件)。我可以使用我正在读取的当前字节位置并除以文件的总大小以获得百分比进度。但是如果只有一个ProgressChanged事件,我该如何将此值传递给progressBar2?C#Backgroundworker报告2个进度条的进度?
5
A
回答
5
一种方法是使用BackgroundWorker.ReportProgress(Int32, Object)并在userState参数中传递任何您想要的值。
另一种方法是简单地知道,当您在第一个进度条上达到100%时,您需要增加另一个条。
3
ReportProgress有一个overload它允许您传递额外的对象。你可以用它来返回你需要的任何额外的状态。
public void ReportProgress(
int percentProgress,
Object userState
)
然后您可以从ProgressChangedEventArgs.UserState
读取状态。
相关问题
- 1. BackgroundWorker不报告filecopy进度?
- 2. BackgroundWorker报告活动进度
- 3. DotNetZip库和C#BackgroundWorker的报告进度
- 4. C进度条和backgroundworker#
- 5. 定期报告BackgroundWorker的进度
- 6. BackgroundWorker不报告进度的问题
- 7. BackgroundWorker从外部类报告进度?
- 8. BackgroundWorker很酷,但只报告进度
- 9. 进度条未使用backgroundworker进度
- 10. stream.copyto与进度条报告
- 11. 如何使用C#BackgroundWorker报告本地C++代码的进度?
- 12. VB网的BackgroundWorker +进度条
- 13. 使用backgroundworker的进度条
- 14. 报告进度
- 15. 仅使用BackgroundWorker报告仅第一次报告进度
- 16. Backgroundworker,未运行进度条
- 17. C#进度条不会更新backgroundworker
- 18. C#WinForm BackgroundWorker没有更新进度条
- 19. C#进度条不能用backgroundworker更新
- 20. 与进度条backgroundworker两个问题WPF
- 21. Directory.GetFiles上的报告进度
- 22. spark.ml.gradientboosting的进度报告?
- 23. Backgroundworker进度:它如何报告一个双精度数而不是整数
- 24. 进度条[C++]
- 25. C#进度条
- 26. 进度条C++
- 27. 进度条,c#
- 28. VB.net - 使用BackgroundWorker的进度条
- 29. 从班的BackgroundWorker更新进度条
- 30. 工作进度报告