我正在研究VB.NET中的一些代码,它们会自动执行一些操作。 我有几个按钮,可以手动执行一些操作。但我也有一个按钮可以自动执行某些操作。
如果我按下按钮手动运行它,它可以正常工作。
但是当我按下按钮自动运行它时,它会给我一个Object reference not set to an instance of an object exception.
这是给出例外的代码:
Private Sub btnStep4_Click(sender As Object, e As EventArgs) Handles btnStep4.Click
Dim allelements As HtmlElementCollection = WebBrowser1.Document.All
Dim ran As Boolean = False
For Each webpageelement As HtmlElement In allelements
WebBrowser1.Document.GetElementById("website_name").SetAttribute("value", txtWebName.Text + txtWebExt.Text) '< This one
WebBrowser1.Document.GetElementById("website_code").SetAttribute("value", txtWebName.Text) '< And this one
If webpageelement.GetAttribute("title") = "Website opslaan" And ran = False Then
webpageelement.InvokeMember("click")
ran = True
End If
Next
End Sub
所以当我点击btnStep4按钮时,它可以工作。但是,当我像这样模拟点击时:
While WebBrowser1.ReadyState <> WebBrowserReadyState.Complete
Application.DoEvents()
End While
btnStep4_Click(sender, e)
我得到了例外。
这是为什么?有什么我想念的吗?
这可能是一个愚蠢的错误,但我无法找出我做错了什么 任何帮助或提示将不胜感激!