2012-02-02 2 views
1

Как программно установить ввод значения элемента внутри элемента управления WebBrowser?Как отправить форму в элементе управления WebBrowser?

Например, у меня есть страница HTML, как:

<form method="post" action="...aspx" enctype="multipart/form-data" id="mainForm"> 
    <input type="file" id="file" /> 
    <input type="submit" id="submit" value="Submit it" /> 
</form> 

Как представить его с помощью C# код? Я пытался что-то:

private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e) 
{ 
    var doc = webBrowser1.Document; 
    var input = doc.GetElementById("file"); 
    input.SetAttribute("value", @"C:\foo.baa"); 
    doc.GetElementById("mainForm").InvokeMember("submit"); 
} 

но он не работает, значение ввода не выставиться и форма не занесена. Надеюсь, это чисто. Заранее спасибо.

+0

может быть это: http://stackoverflow.com/questions/1539685/how- programatically-submit-a-form-without-a-submit-button-in-webbrowser – Zaki

+0

почему -1? объясните пожалуйста. – Jack

+0

это был не я :) – Zaki

ответ

0

Некоторые предложения, которые вы можете найти here

также посмотреть here

1

Попробуйте это:

HtmlElement loBtn = (HtmlElement)loWebBrowser.Document.GetElementById("btnSubmit"); 
loBtn .InvokeMember("click"); 
Смежные вопросы