【发布时间】:2013-10-31 13:38:55
【问题描述】:
我目前在WinForm 中使用webBrowser control -
public Form1()
{
InitializeComponent();
webBrowser1.AllowNavigation = true;
webBrowser1.Navigate("http://foo.bar");
}
我有一个按钮控件,它采用 webBrowser1.Url.OriginalString 并将其设置为文本框 -
// On button_Click
string requestResponse = webBrowser1.Url.OriginalString;
requestURLtextBox.Text = requestResponse;
但是,如果在 webBrowser1 有足够的时间获取 OriginalString 文本之前单击按钮,则会出错,因为该值尚不存在。
我尝试添加 -
while (webBrowser1.ReadyState != WebBrowserReadyState.Complete)
{
Thread.Sleep(1000);
}
在 button_Click 事件中的前一个代码之前,这进入了一个无限循环。 webBrowser完成后如何找回OriginalString?
【问题讨论】:
-
Similar Question :看起来你想要 DocumentCompleted 事件
-
+1 表示
DocumentCompleted。使用async/await就可以使用easier,VB.NET也有这个功能。
标签: c# winforms webbrowser-control