日期:2014-05-17 浏览次数:20430 次
BackgroundWorker bw = null;
public Form5()
{
InitializeComponent();
bw = new BackgroundWorker();
bw.WorkerSupportsCancellation = true;
bw.DoWork += new DoWorkEventHandler(bw_DoWork);
bw.RunWorkerCompleted += new RunWorkerCompletedEventHandler(bw_RunWorkerCompleted);
}
void bw_DoWork(object sender, DoWorkEventArgs e)
{
for (int i = 1; i < 1000; i++)
{
if (bw.CancellationPending)
{
e.Cancel = true;
break;
}
this.Invoke((MethodInvoker)delegate
{
this.ShowText(String.Format("第{0}步正在执行", i));
});
}
}
void bw_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
{
this.ShowText("执行完毕!");
}
private void button1_Click(object sender, EventArgs e)
{
this.button1.Enabled = false;
this.button2.Enabled = true;
bw.RunWorkerAsync();
}
private void button2_Click(object sender, EventArgs e)
{
&nb