Perform a click on a Webbrowser control

后端 未结 3 996
挽巷
挽巷 2021-01-16 11:43

Does anybody know a good way to perform a click on a control inside of a webbrowser? Preferably from ID?

Thanks, ALL suggestions are appreciated.

3条回答
  •  醉酒成梦
    2021-01-16 12:36

    Use the HtmlElement.InvokeMember("click") method. Here's a sample form that uses the Google "I feel lucky" button:

    public partial class Form1 : Form {
        public Form1() {
            InitializeComponent();
            webBrowser1.Url = new Uri("http://google.com");
            webBrowser1.DocumentCompleted += webBrowser1_DocumentCompleted;
        }
    
        void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e) {
            if (webBrowser1.Url.Host.EndsWith("google.com")) {
                HtmlDocument doc = webBrowser1.Document;
                HtmlElement ask = doc.All["q"];
                HtmlElement lucky = doc.All["btnI"];
                ask.InnerText = "stackoverflow";
                lucky.InvokeMember("click");
            }
        }
    }
    

提交回复
热议问题