是否将密钥发送到webbrowser vb.net?

是否将密钥发送到webbrowser vb.net?,vb.net,button,browser,send,sendkeys,Vb.net,Button,Browser,Send,Sendkeys,我的vb.net应用程序中有一个webbrowser,我想在网站的文本框中输入文本。单击按钮1时,它会以编程方式查找文本框并在中键入消息 Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click SendKeys.Send("{TAB}{TAB}{TAB}{TA

我的vb.net应用程序中有一个webbrowser,我想在网站的文本框中输入文本。单击按钮1时,它会以编程方式查找文本框并在中键入消息

Public Class Form1

        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            SendKeys.Send("{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}")
            SendKeys.Send("The text I want to send to the control.")
        End Sub

End Class

但是,它不起作用。tab键确实可以将光标放在正确的位置,但是当文本粘贴到应用程序中时会崩溃。出了什么问题?

因为您使用的是webbrowser控件,所以可以按名称访问元素。例如,这会将文本放入谷歌的搜索框,然后单击谷歌搜索按钮:

WebBrowser1.Document.All("q").SetAttribute("Value", "Text value.")
WebBrowser1.Document.All("btnK").InvokeMember("click")

要向WebBrowser发送关键点,请获取WebBrowser焦点,然后获取SendKeys。使用以下代码:

 Me.WebBrowser1.Document.Body.Focus()
 System.Windows.Forms.SendKeys.Send("...") 'Whatever keys combination you want

你是在用windows窗体应用程序浏览网页吗?@StingyJack我想是的,但你把我弄糊涂了:/我不明白你刚才说的话!您的代码来自windows窗体应用程序。“站点上的文本框”意味着您的交互目标是一个网页。这是正确的吗?