作者hatasum (我很可爱)
看板C_Sharp
标题Re: [问题] 关於WebBrowser的问题
时间Mon Oct 17 22:46:24 2011
※ 引述《hcl012 (怪龙-卡西欧鲁)》之铭言:
: 我目前正在写的程式
: 主要是希望将一个字串阵列a里面的字串一一拿到WebBrowser当成网址
: 并且在回圈里面等网页载入成功後再载入下一个网址
: 程式码大概是这样
: for (int i = 0; i <= num; i++ )
: {
: loading = true;
: webBrowser.Navigate(a[i]);
: while (loading)
: {
: Application.DoEvents();
: }
: }
: 另外再定义网页载入後的程式
: private void webBrowser_DocumentCompleted(object sender,
: WebBrowserDocumentCompletedEventArgs e)
: {
: loading = false;
: }
: 我的想法就是用navigate载入网页後
: 先用while进入无限回圈
: 等到载入完成後loading被设为false再继续载入下一个网页
: 但是实际执行後
: 程式常常在进入while回圈就再也没有出来过了
: 请问一下我的写法出了什麽问题呢?
: 如果我这样写不对的话,要怎麽写才能达到我要的效果呢?
: 感谢各位的回答
这应该可以完全用event去传递呼叫,不需要用到Doevents
int index=0;
private void Start()
{
webBrowser.Navigate(a[index]);
}
private void webBrowser_DocumentCompleted(object sender,
WebBrowserDocumentCompletedEventArgs e)
{
// dosomething
index++;
if(index<a.Length)
{
webBrowser.Navigate(a[index]);// or Start();
}
}
个人意见 : DoEvents就和goto一样...非必要...尽量别用^^"
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 111.240.8.99