我现在要做的是
整体上说:循环1000次,每次首先操作界面(这个决定了不能在这里使用backgroundWorker),第三步用户界面的内容开启backgroundWorker相关的处理过程!我现在就是这样想的,但是不知道为啥执行完第一次循环,webBrowser1_DocumentCompleted以后下面的循环就终止了请问有什么解决办法:代码如下:for(1到1000){
操作界面,根据界面的内容决定是否开启webBrowser1
;如果满足{webBrowser1_DocumentCompleted}
}谁能帮我解决这个问题 哈哈

解决方案 »

  1.   

    错了 上面是:backgroundWorker_DocumentCompleted 
      

  2.   

    DocumentCompleted 有这个成员么?
      

  3.   

    具体的代码贴一下啊,单单在循环里执行backgroundWorker1_RunWorkerCompleted 是不会有问题的
      

  4.   

    谢谢你的回答 
    每次循环 都需要用到backgroundWorker1_RunWorkerCompleted 也可以吗
      

  5.   

    把backgroundWorker1_RunWorkerCompleted这个处理放到一个委托函数里,再调用试试看
      

  6.   

    你用backgroundWorker这样写是有问题的,你说”不知道为啥执行完第一次循环“就结束了,其实是执行完了1000次后才执行了backgroundWorker1_RunWorkerCompleted 
    你应该在backgroundWorker1_RunWorkerCompleted 
    判断是否执行到了1000次,如果不是的话,就再执行backgroundWorker1_RunWorker事件,要设个变量来放1000这个数,每执行完一次+1,不用用到for
      

  7.   

    楼主可能BackgroundWorker组件用的不是很多,
    BackgroundWorker对应的三个事件处理程序执行的线程上下文需要注意的。
    建议参考一下下面的文章有所帮助,使用BackgroundWorker组件进行异步操作编程
    http://blog.csdn.net/zhzuo/archive/2008/07/23/2699305.aspx实现增强的异步任务执行组件
    http://blog.csdn.net/zhzuo/archive/2008/07/23/2699847.aspx