2016-12-14 10 views
0

解決するには問題があります。C#Webページを開いてボタンをクリックする方法

ボタンは、このコードを持っています

WebBrowser wb = new WebBrowser(); 
wb.Navigate(link, true); 
wb.Document.GetElementById(idname).InvokeMember("click"); 

私はそれに達すると、ページが「白」であるので、私はgetElementByIdを上とNullReferenceExceptionを持っています。 GetElementByIdにコメントすると、ページが正しく開かれます。

おかげ

+0

あなたは数秒の遅延でタイマーを使用することができ、クリックを呼び出すことができます。 –

+0

こんにちはアナランド、答えに感謝します。私はそれが遅れの問題ではないと思う。なぜなら、私がデバッグすると、ページは自分のコードの最後の "}"まで "白い"ままです。命令の後では文書はまだヌルですが、ページ全体のアプリケーションを正しく実行した場合は正しく動作するため、これは特別な動作です。 私がよく説明したかわかりません –

答えて

0

ここにある:

private WebBrowser _wb = new WebBrowser(); 

public FormMain() 
{ 
    _wb.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(wb_DocumentCompleted); 
    InitializeComponent(); 
} 
+0

WebBrowserは視覚的なコントロールとして使用することを意図しています。通常、このように構築してコードで直接使用することはできません。そのコントロールを持つフォームを作成してください。 – MadOX

+1

私は視覚コントロールを使用しなければなりませんでしたが、今は正常に動作します。ありがとう! –

関連する問題