Vb.net .NET Webbrowser控件处理当前页/控件中的表单提交

Vb.net .NET Webbrowser控件处理当前页/控件中的表单提交,vb.net,webbrowser-control,Vb.net,Webbrowser Control,在我的浏览器控件中,用户需要一步一步地填写和提交表单。但问题是,在源html/网页中,表单目标为“\u blank”。因此,当用户尝试填写第一页/表单并提交时,请在Internet Explorer新窗口(而不是我的浏览器控件)中打开下一个表单 我尝试了下面的方法,但没有成功 方法1: 我使用以下代码更改表单目标属性: objWebForm.webMain.Document.GetElementById("formID").SetAttribute("target", "_self") 但这不

在我的浏览器控件中,用户需要一步一步地填写和提交表单。但问题是,在源html/网页中,表单目标为“\u blank”。因此,当用户尝试填写第一页/表单并提交时,请在Internet Explorer新窗口(而不是我的浏览器控件)中打开下一个表单

我尝试了下面的方法,但没有成功

方法1:

我使用以下代码更改表单目标属性:

objWebForm.webMain.Document.GetElementById("formID").SetAttribute("target", "_self")
但这不起作用,除此之外,我需要知道表单id,这是不可能的

方法2: 我跟着山姆回答了这个问题

但这只适用于链接锚标记。不符合形式目标:(


那么,有什么解决方法吗?

您可以使用httpclient类。在winform中重新创建表单,并使用httpclient提交请求。然后您可以控制发送和接收的内容。@user7452368亲爱的先生,我不是以编程方式发送表单,用户单击“提交”按钮。而且我也不需要控制/处理请求和响应onse。我只需要打开通过表单提交启动的新页面/窗口。您可以使用httpclient类。在winform中重新创建表单并使用httpclient提交请求。然后您可以控制发送和接收的内容。@user7452368亲爱的先生,我不是以编程方式发送表单,用户单击“提交”按钮。还有我不需要控制/处理请求和响应。我只需要打开通过表单提交启动的新页面/窗口。
private void WebBrowser1_NewWindow(object sender, System.ComponentModel.CancelEventArgs e) {
    e.Cancel = true;
    WebBrowser1.Navigate(WebBrowser1.StatusText);
}