2011-10-25 31 views
0

フォームにWebBrowser要素があります。 ページを読み込みます。 は、これは、ページがロードされるまで待機するコードが続きます。C#WebBrowser - DOM要素が読み込まれるまで待つ方法

while (webBrowser1.ReadyState != WebBrowserReadyState.Complete) 
{ 
Application.DoEvents(); 
} 

それから私はGetElementByID.Focusの一連の文を作ります。 "SendKeys.Send(" MyKeys ")" プログラムを実行すると、Webブラウザのダウンロードにページが必要になり、すべての "SendKeys"値が最後のフィールドに入力されたように見えます。

フィールドに入力する前にさまざまな方法で一時停止しようとしましたが、機能しません。

答えて

1

この

webBrowser1.Document.GetElementById("FirstName").SetAttribute("value", "John"); 

は、私はそれがどのようになる聞かせてみてください。

+0

SendKeysでのみ行う必要があります。 –

+1

SendKeysを使用する特別な理由は何ですか?おそらく、同じことを達成するための他の回避策があります。 Application.DoEventsを使用するのではなく、ProgressChangedイベントを使用してReadyStateをトラップしました。 – Tariqulazam

関連する問題