GeckoFX - 如果页面加载完成则触发事件 (.NET)
GeckoFX - donig events if page load is complete ( .NET )
我试图让我的 geckofx 浏览器等待页面加载 "something like DocumentComplete" 但我不能,我使用的是 geckofx 1.9.2,我想这就是问题所在,也许这个版本不支持DocumentComplete 事件,这是我正在尝试做的一个例子:
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim uAgent As String = "Mozilla/5.0 (Linux; U; Android 2.3.5; en-US; GT-I9100 Build/GINGERBREAD) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 UCBrowser/10.3.0.552 U3/0.8.0 Mobile Safari/534.30"
Skybound.Gecko.GeckoPreferences.User("general.useragent.override") = uAgent
GeckoWebBrowser1.Navigate("google.com")
If GeckoWebBrowser1.DocumentComplete = True Then
Messagebox.show("Page Loaded !", "Done")
End If
End Sub
您可以在此处查看您的 GeckoFX 版本支持的内容
https://bitbucket.org/geckofx/
除此之外,您需要以不同的方式设计代码。
当您初始化并首次使用浏览器时,将事件处理程序附加到事件。
据我在最旧的 GeckoFX 版本的代码中看到的,它确实支持 DocumentCompleted
事件
#region public event EventHandler DocumentCompleted
/// <summary>
/// Occurs after the browser has finished parsing a new page and updated the <see cref="Document"/> property.
/// </summary>
[Category("Navigation"), Description("Occurs after the browser has finished parsing a new page and updated the Document property.")]
public event EventHandler DocumentCompleted
{
add { this.Events.AddHandler(DocumentCompletedEvent, value); }
remove { this.Events.RemoveHandler(DocumentCompletedEvent, value); }
}
这意味着您可以将处理程序附加到此事件,每当浏览器完成导航时,都会调用它。
将加载后要执行的代码放入事件处理程序中。
我试图让我的 geckofx 浏览器等待页面加载 "something like DocumentComplete" 但我不能,我使用的是 geckofx 1.9.2,我想这就是问题所在,也许这个版本不支持DocumentComplete 事件,这是我正在尝试做的一个例子:
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim uAgent As String = "Mozilla/5.0 (Linux; U; Android 2.3.5; en-US; GT-I9100 Build/GINGERBREAD) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 UCBrowser/10.3.0.552 U3/0.8.0 Mobile Safari/534.30"
Skybound.Gecko.GeckoPreferences.User("general.useragent.override") = uAgent
GeckoWebBrowser1.Navigate("google.com")
If GeckoWebBrowser1.DocumentComplete = True Then
Messagebox.show("Page Loaded !", "Done")
End If
End Sub
您可以在此处查看您的 GeckoFX 版本支持的内容 https://bitbucket.org/geckofx/
除此之外,您需要以不同的方式设计代码。 当您初始化并首次使用浏览器时,将事件处理程序附加到事件。
据我在最旧的 GeckoFX 版本的代码中看到的,它确实支持 DocumentCompleted
事件
#region public event EventHandler DocumentCompleted
/// <summary>
/// Occurs after the browser has finished parsing a new page and updated the <see cref="Document"/> property.
/// </summary>
[Category("Navigation"), Description("Occurs after the browser has finished parsing a new page and updated the Document property.")]
public event EventHandler DocumentCompleted
{
add { this.Events.AddHandler(DocumentCompletedEvent, value); }
remove { this.Events.RemoveHandler(DocumentCompletedEvent, value); }
}
这意味着您可以将处理程序附加到此事件,每当浏览器完成导航时,都会调用它。 将加载后要执行的代码放入事件处理程序中。