我在Windows窗体应用程序中放置了一个webbrowser控件,我希望我的可视basic.net脚本知道该webbrowser控件加载的网页内是否单击了按钮。
我想必须有一种方法可以做到这一点,到目前为止,我知道如何通过ID访问文档元素,但是我不知道如何触发事件。
谢谢你的帮助!
Imports Gecko
Public Class Form1
Public myBrowser As GeckoWebBrowser
Public Sub New()
InitializeComponent()
Gecko.Xpcom.Initialize("c:\xulrunner")
myBrowser = New GeckoWebBrowser()
myBrowser.Parent = Me
myBrowser.Dock = DockStyle.Fill
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
myBrowser.Navigate("example.com")
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
' MessageBox.Show(myBrowser.Document.GetElementById("divID").TextContent())
End Sub
Private Sub divclick(ByVal sender As Object, ByVal e As EventArgs) Handles myBrowser.Document.GetElementById("divID").Click
'codes that i need to be run
End Sub
End Class
最佳答案
您说您知道如何通过ID获取文档元素。一旦有了HtmlElement
对象,就可以向其事件添加事件处理程序。例如:
AddHandler myHtmlElement.Click, AddressOf MyElementClicked
然后,每次单击网页中的该元素时,都会调用
MyElementClicked
方法:Private Sub MyElementClicked(ByVal sender As Object, ByVal e As HtmlElementEventArgs)
' ...
End Sub
通常,您将事件处理程序添加到Web浏览器控件的
DocumentCompleted
事件处理程序中的HTML元素中。关于javascript - 如何让网页浏览器控件内的网页触发Windows窗体的vb.net功能?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18789806/