后台工作者的ReportProgress百分比参数C#

时间:2015-04-11 13:20:02

标签: c# backgroundworker

有没有办法向Double ReportProgress方法提供Background Worker变量类型,以便显示小数点百分比? (例如12.07%)或者我应该简单地将其作为UserState参数传递然后投射它? 默认情况下允许此方法Double类型不是更好吗?

2 个答案:

答案 0 :(得分:3)

简单的方法是传递0到10000之间的数字,而不是0到100。

然后将它们除以100d以获得2位小数精度百分比。

有时候我发现自己甚至传递了枚举值而不是百分数。

答案 1 :(得分:2)

根据MSDN,没有BackgroundWorker.ReportProgress方法重载,进度百分比为Double

我认为没有必要这样做。

但如果你真的需要>,有很多方法可以实现

  1. 956(95.6%)等格式传递整数,并在显示时简单划分。
  2. 使用userState参数。