我在项目中使用Web浏览器控件,然后打开一个包含文件选择器对象的Web。 现在我想以编程方式注入此文件选择器对象中文件的路径。
我试图获取HtmlElement
,但我没有在源代码中找到元素ID。
在网络上有“浏览...”按钮,打开文件选择器,然后文件路径显示在小文本字段中,我想将文件路径注入文本字段。
答案 0 :(得分:1)
首先。 为要更改其值的元素建立名称,ID或类。有很多方法可以做到这一点。我会使用firebug for firefox或IE开发人员工具栏,或者只查看页面的来源并确定该字段的名称/ ID。现在,如果该字段没有可以使用的名称或ID,则可以获取包含元素并遍历子元素n次,直到获得所需的元素。
对于我的嵌入式浏览器应用程序,我在c#中执行了以下操作: -
// webBrowser is the name of the embedded IE browser in your app
var htmlDocument = webBrowser.Document;
if(htmlDocment!=null)
{
var field = htmlDocument.GetElementById("...the id...");
if(field!=null)
{
field.SetAttribute("value","...yourfilenamepathonyourmachine...");
}
// Now you would need to establish the ID of the submit element and click that
var submitButton = htmlDocument.GetElementById("...submit button...");
if(submitButton!=null)
{
submitButton.InvokeMember("Click");
}
// your code to loop?
}
那么你有相关网页的HTML吗?这可能有所帮助,可以给出更好的答案
关心朱利安