等到WebBrowser控件页面加载 [英] Wait until page loads in webbrowser control

查看:135
本文介绍了等到WebBrowser控件页面加载的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我使用的是C#WebBrowswer控制和我有一样的时候下一步按钮时不加载页面pssed $ P $但程序试图进行一个问题,而是给了我一个空的错误。

是否有使程序等待,直到页面加载完成的功能?

我试图把一个while循环来检查HTML页面的标题,但然后程序冻结的程序。喜欢的东西将冻结程序:

 而(!webbrowser1.Document.Title.ToString()。等于(NextPageTitle))
   {
   }
   :: NextCommands ::


它不工作,我想,和按钮fblqf不点击。但它不是返回null错误。

 公共无效的button1_Click(对象发件人,EventArgs的发送)
{    webBrowser1.Document.GetElementById(Q)的setAttribute(价值,חחח);
    webBrowser1.Document.GetElementById(btnK)InvokeMember(点击);
    webBrowser1.DocumentCompleted + = webBrowser1_DocumentCompleted;
}
无效webBrowser1_DocumentCompleted(对象发件人,WebBrowserDocumentCompletedEventArgs E)
{
    //你需要现在该页面已完成加载做的工作
    webBrowser1.Document.GetElementById(fblqf)InvokeMember(点击);
}

解决方案:

 公共无效的button1_Click(对象发件人,EventArgs的发送)
{
    webBrowser1.Document.GetElementById(Q)的setAttribute(价值,חחח);
    webBrowser1.Document.GetElementById(btnK)InvokeMember(点击);
    INT X = 0;
    而(X == 0)
   {
       System.Windows.Forms.Application.DoEvents();
        如果(webBrowser1.Document.GetElementById(pnnext)!= NULL)
        打破;
   }    webBrowser1.Document.GetElementById(pnnext)InvokeMember(点击);
    webBrowser1.Document.GetElementById(Q)焦点()。
}


解决方案

我发现了一个简单的解决方案!

在非常努力的工作,我发现的东西,固定对我来说:)

 公共无效的button1_Click(对象发件人,EventArgs的发送)
{
    webBrowser1.Document.GetElementById(Q)的setAttribute(价值,חחח);
    webBrowser1.Document.GetElementById(btnK)InvokeMember(点击);
    INT X = 0;
    而(X == 0)
   {
       System.Windows.Forms.Application.DoEvents();
        如果(webBrowser1.Document.GetElementById(pnnext)!= NULL)
        打破;
   }    webBrowser1.Document.GetElementById(pnnext)InvokeMember(点击);
    webBrowser1.Document.GetElementById(Q)焦点()。
}

好运web浏览器的程序员....!

I'm using the C# WebBrowswer control and I have a problem that when a button like "Next" is pressed when the page is not loaded yet the program tries to proceed but instead gives me a null error.

Is there is a function to make the program wait until the page has completed loading?

I tried to put a while loop in the program that checks the title of the html page but then the program freezes. Something like will freeze the program:

    while(!webbrowser1.Document.Title.ToString().Equals("NextPageTitle"))
   {
   }
   ::NextCommands::


It Doesnt work, i tried that and the button "fblqf" is not clicked. but its not returns null error..

public void button1_Click(object sender, EventArgs e)
{



    webBrowser1.Document.GetElementById("q").SetAttribute("value", "חחח");
    webBrowser1.Document.GetElementById("btnK").InvokeMember("Click");
    webBrowser1.DocumentCompleted += webBrowser1_DocumentCompleted;


}
void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
    // do the work you need to do now that that page has completed loading
    webBrowser1.Document.GetElementById("fblqf").InvokeMember("Click");
}

Solution:

public void button1_Click(object sender, EventArgs e)
{
    webBrowser1.Document.GetElementById("q").SetAttribute("value", "חחח");
    webBrowser1.Document.GetElementById("btnK").InvokeMember("Click");
    int x=0;
    while (x==0)
   {
       System.Windows.Forms.Application.DoEvents();
        if(webBrowser1.Document.GetElementById("pnnext") != null)
        break;
   }

    webBrowser1.Document.GetElementById("pnnext").InvokeMember("Click");
    webBrowser1.Document.GetElementById("q").Focus();
}

解决方案

I Found an easy Solution!!!

After really hard work i found something that fixed it for me :)

public void button1_Click(object sender, EventArgs e)
{
    webBrowser1.Document.GetElementById("q").SetAttribute("value", "חחח");
    webBrowser1.Document.GetElementById("btnK").InvokeMember("Click");
    int x=0;
    while (x==0)
   {
       System.Windows.Forms.Application.DoEvents();
        if(webBrowser1.Document.GetElementById("pnnext") != null)
        break;
   }

    webBrowser1.Document.GetElementById("pnnext").InvokeMember("Click");
    webBrowser1.Document.GetElementById("q").Focus();
}

Good luck webbrowser programmers....!

这篇关于等到WebBrowser控件页面加载的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆