通过WinForm实现了一个计算功能,并且要导出数据。需要用进度条progressBar来呈现这个过程。

解决方案 »

  1.   

    private void CopyWithProgress(string[] filenames)
    {
    // Display the ProgressBar control.
    pBar1.Visible = true;
    // Set Minimum to 1 to represent the first file being copied.
    pBar1.Minimum = 1;
    // Set Maximum to the total number of files to copy.
    pBar1.Maximum = filenames.Length;
    // Set the initial value of the ProgressBar.
    pBar1.Value = 1;
    // Set the Step property to a value of 1 to represent each file being copied.
    pBar1.Step = 1;

    // Loop through all files to copy.
    for (int x = 1; x <= filenames.Length; x++)
    {
    // Copy the file and increment the ProgressBar if successful.
    if(CopyFile(filenames[x-1]) == true)
    {
    // Perform the increment on the ProgressBar.
    pBar1.PerformStep();
    }
    }
    }
      

  2.   

     两个线程,一个是进度条的,一个是你的时间查询           
               Thread s2 = new Thread(new ThreadStart(NewMothod));
                s2.Start();            Thread s1 = new Thread(new ThreadStart(Search));
                s1.Start();
    这是实现进度条的方法:
    private void NewMothod()
            {
                for (int i = 1; i <= 10; i++)
                {
                    Thread.Sleep(100);
                    progressBar.Value = i * 10;
                    if (autoEvents.WaitOne(10,false))
                    {
                        progressBar.Value = 100;
                        break;
                    }
                } 
            }看看对你有没有帮助!!!