我正在尝试使用axwebBrowser控件在网页中选择一个选项。
我知道如何选择一个值,这是我的代码: mshtml.IHTMLElement ddlid1b = doc.getElementById(“id56”); ddlid1b.children [3] .SetAttribute(“selected”,“selected”);
之后我发起了改变事件,如下所示
var el3 =(ddlid1b as IHTMLElement3); el3.FireEvent( “平变化”);
但是有一个问题,当网站在更改值时自动刷新,因此当我使用我的代码时,选择框中的值会更改,但网站不会刷新。
是否可以像在.aspx页面中一样回发页面。
我如何使这项工作?
提前谢谢
答案 0 :(得分:1)
最后,我使用时间控制解决了这个问题。
完成下拉选择事件后,我们需要像
一样启动Timermshtml.IHTMLElement ddlid1b = doc.getElementById(“id56”); ddlid1b.children [3] .SetAttribute(“selected”,“selected”); var el3 =(ddlid1b as IHTMLElement3); el3.FireEvent( “平变化”);
Timer.Start();
在Tick事件中,我们需要下载并执行操作
private void timer1_Tick(object sender, EventArgs e)
{
try
{
timer1.Stop();
mshtml.HTMLDocument doc1 = (mshtml.HTMLDocument)axWebBrowserClaims.Document;
IHTMLElementCollection col = doc1.forms;
mshtml.HTMLDocument doc3 = (mshtml.HTMLDocument)axWebBrowserClaims.Document;
string html2 = doc3.body.innerHTML;
mshtml.IHTMLElement ddlStates = doc3.getElementById("ddlStates");
ddlStates.children[1].SetAttribute("selected", "selected");
mshtml.IHTMLElement txtDistrict = doc3.getElementById("txtDistrict");
txtDistrict.innerText = "Khammam";
mshtml.IHTMLElement btnSubmit = doc3.getElementById("btnSubmit");
btnSubmit.click();
}
}
catch (Exception ex)
{
}
}
感谢...