C# 从for循环更新进度条
我正在for循环中处理一些xml文件,根据已处理的文件数,我想显示进度条。 假设目录中有100个文件,文件在循环中逐个处理,我想根据for循环的当前计数更新进度条。C# 从for循环更新进度条,c#,winforms,progress-bar,C#,Winforms,Progress Bar,我正在for循环中处理一些xml文件,根据已处理的文件数,我想显示进度条。 假设目录中有100个文件,文件在循环中逐个处理,我想根据for循环的当前计数更新进度条。 请建议..使用后台工作程序处理100个文件,每次迭代调用ReportProgress,挂接backgroundworker的Process changed事件,并相应地更新progressbar 您可以查看详细信息。查看类,尤其是在活动中。您应该将BackgroundWorker与ProgressBar控件结合使用。这里有一个简单的
请建议..使用后台工作程序处理100个文件,每次迭代调用ReportProgress,挂接backgroundworker的Process changed事件,并相应地更新progressbar
您可以查看详细信息。查看类,尤其是在活动中。您应该将BackgroundWorker与ProgressBar控件结合使用。这里有一个简单的。
用于(inti=1;i
设置最小值和最大值,然后使用Step
属性和PerformStep
方法来增加进度条的值
更新循环中的迭代器。(如果循环是for(int i=0;i<100;i++)
迭代器是i)。请不要添加。一旦你赢得足够的声誉,请回答最好的,并将其余的标记为副本。如果不是副本,请根据question@ManfredRadlwimmer对不起,我是新来的。谢谢你的建议,我以后会照办的。
for(int i=1;i<linecount;i++)
{
progressBar1.Value = i * progressBar1.Maximum / linecount; //show process bar counts
LabelTotal.Text = i.ToString() + " of " + linecount; //show number of count in lable
int presentage = (i * 100) / linecount;
LabelPresentage.Text = presentage.ToString() + " %"; //show precentage in lable
Application.DoEvents(); keep form active in every loop
}
progressBar1.Step = 1;
int part=someList.Count / 100;
....
....
//Inside the loop
if (loop_counter % part == 0)
{
progressBar1.PerformStep();
}