我想要的是它将导航到SignInPage.aspx但不在webbrowser中显示此页面。
private void button1_Click(object sender, EventArgs e)
{
statuslabel.Text = "";
webBrowser1.DocumentCompleted += WebBrowser1_DocumentCompleted;
webBrowser1.Navigate("http://SignInPage.aspx");
}
private void WebBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
webBrowser1.DocumentCompleted -= WebBrowser1_DocumentCompleted;
webBrowser1.DocumentCompleted += WebBrowser2_DocumentCompleted;
try
{
webBrowser1.Document.GetElementById("UserName").InnerText = textBox1.Text.ToString();
webBrowser1.Document.GetElementById("Password").InnerText = textBox2.Text.ToString();
webBrowser1.Document.GetElementById("LoginButton").InvokeMember("click");
}
catch (Exception err)
{
string error = err.ToString();
webBrowser1.DocumentCompleted -= WebBrowser2_DocumentCompleted;
}
}
答案 0 :(得分:0)
应该使用WebRequest和WebResponse。如果您需要Cookie,隐藏的表单字段等,最好的方法是在Edge或Chrome中运行它,然后使用Fiddler来窥探HTTP流量,以便您可以在程序中重新创建它。 Fiddler甚至可以让你看到HTTPS的结果,这样就可以很容易地找到你需要的所有参数/标题。