17
2012
06

C# 进度条提示和显示百分比

private volatile int currentNumber = 0;
private void Form1_Load(object sender, EventArgs e)
{
//Form加载的时候启动一个手工线程.
System.Threading.Thread thread = new System.Threading.Thread(new System.Threading.ThreadStart(NumberIncrement));
thread.Start();
}
//递增数字.
private void NumberIncrement()
{
for (int i = 0; i < 100; i++)
{
currentNumber += i;
//注意,当前方法由手工线程执行,无法直接对UI线程下的控件赋值.我们启用一个委托,跳回UI线程.
EventHandler eh = new EventHandler(DisplayNumber);
this.Invoke(eh, new object[] { null, null });
//为了看到效果,这里可以加上
//Thread.Sleep(30);
}
}
private void DisplayNumber(object sender, EventArgs e)
{
//这里给UI控件赋值.
//比如 txtNumber.Text = currentNumber.ToString();
}
需要进程控制来多长时间刷新进度显示,用label或者textbox显示百分比的!!

« 上一篇下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。