Vb.Net HtmleElement DropList项InvokeMember(“单击”)不执行任何操作

Vb.Net HtmleElement DropList项InvokeMember(“单击”)不执行任何操作,vb.net,.net-4.0,Vb.net,.net 4.0,全部 情景: 成功登录到网页后,会出现一个项目的下拉列表。我正在尝试单击该列表中的第一项,它将更改底部内容。我尝试过各种方法,但都没有成功。并不是我在返回一个错误,只是我什么都没做 Dim AllElements As HtmlElementCollection = WebBrowser1.Document.All For Each WebPageElement As HtmlElement In AllElements If WebPageElement.I

全部

情景: 成功登录到网页后,会出现一个项目的下拉列表。我正在尝试单击该列表中的第一项,它将更改底部内容。我尝试过各种方法,但都没有成功。并不是我在返回一个错误,只是我什么都没做

    Dim AllElements As HtmlElementCollection = WebBrowser1.Document.All

    For Each WebPageElement As HtmlElement In AllElements

        If WebPageElement.Id = Nothing Then

        Else
            If WebPageElement.Id = "TheElementID" Then
                WebPageElement.InvokeMember("click")
            End If
        End If
    Next
同样,我知道ID和上面点击事件的点击次数。。。但实际上它哪儿也去不了。它不会产生错误

更直接的方法是:

WebBrowser1.Document.GetElementById("TheElementID").InvokeMember("click")
也不会抛出错误,但也不会执行任何操作


如果您有任何帮助,我们将不胜感激,请提前感谢。

需要更多信息。我可以假设最上面的代码块是VB,最下面的代码块是JavaScript,所以我认为您已经接近了,但是什么事件调用第二个代码块呢?这是在计时器中还是在向用户呈现页面后可以调用它?为什么不在VB中完成这一切呢。您是否正在使用一些在单击事件或其他事件中刷新的更新面板?需要更多的故事来帮助。它们都是VB,代码可以互换。此事件可以在网页加载完成后的任何时间发生。因此,为了举例说明,让我们假设它在自己的按钮点击内。同时,WebBrowser控件正在接收命令。正是这样,表单中内置了一个小网页,其行为就像IE、Firefox或Chrome中的网页一样。