2013-01-16 191 views
1

我有一个WinForm C#应用程序中的进度条和起诉我,作为一个进度指示器。 进度条可以根据用户输入的数量(可以去100)有不同的最大尺寸,所以这是我如何设置它:C#进度条百分比

this.pbLoadingWrite.Maximum = Input.Length; 
this.pbLoadingWrite.Step = 1; 

然后只需更新进度条:

this.pbLoadingWrite.PerformStep(); 

所有工作正常,但我想上显示进度条上方的%数为更好的可视性。

由于Input.Length可以> 100,什么是用于显示的百分比的语法? VS c#中有内置的帮助函数吗?

回答

4

计算百分比是很容易在这种情况下

int percent = (progressbar1.Value/progressbar.Maximum) * 100; 

打破:

value = 56, Max = 300, 

56/300 = 0.186666 
0.186666 * 100 = 18.666% 
+1

确定这是有道理的。我错过了100实际上咄我想你需要浮动或双监守百分比始终为0,当你这样做(4/5)* 100 –

+1

@sd_dracula,你可以,如果你乘先用一个整数:(100 * 4)/5 = 80 –

+0

我已经忘记了它是如何工作在C#中,但在大多数语言中,当你用整数除以你坏的惊喜作为一个结果 - 一个整数。如果我错了,请纠正我对C#的声明。 – rbaleksandar