我有一个WinForms C#应用程序。在名为“browser”的表单上有一个WebBrowser控件。从C#提交文件#
另外我有下面的代码:
HtmlDocument doc = browser.Document;
HtmlElement mForm = doc.GetElementById("TheFormId");
doc.GetElementById("Name").SetAttribute("value", "Some Name");
HtmlElement elFile = doc.GetElementById("TheFile");
elFile.Focus();
SendKeys.Send("C:\\1.txt");
mForm.InvokeMember("submit");
的问题是,它不提交的文件。如果我在相应的输入框中手动输入文件名 - 它可以工作。
环境:Win XP SP2的,IE6,VS 2008
编辑: 这解决了这一问题:
SendKeys.Send("C:\\1.txt" + "{ENTER}");
你应该写一个答案,你自己的问题,然后将其标记为接受。 – okutane 2009-11-09 05:18:16
在IE8中修补sendkeys漏洞。 – 2009-11-10 04:16:00
@Dmitry - 感谢您的提示。会这样做。 – Oleg 2009-11-10 11:13:20