2012-03-29 8 views
3
 if (webBrowser1.Url.AbsoluteUri == "www.google.com") 
     { 
      label9.Text = webBrowser1.Url.AbsoluteUri; 
     } 

これは私の現在のコードです。これを実行するためにボタンを押すとエラーが表示されます。WebBrowserコントロールのURLを取得する方法

オブジェクト参照がオブジェクトのインスタンスに設定されていません。

それがなぜそれをどうやって解決するのか分かりません。どんな助けも素晴らしいでしょう。

また、チェックできるようにタイマーで動作する必要があります。

private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e) { 
    if (webBrowser1.Url.ToString() == "www.google.com") { 
      label9.Text = webBrowser1.Url.ToString(); 
    } 
} 

そして、あなたのボタンでClickイベントが追加:

+0

例外の種類、行番号を入力します。上のコードをどこで呼び出すのですか(イベントハンドラ、コンストラクタ)? –

答えて

0

おそらくあなたのwebBrowser1.Urlは がに下記てみnullですURLを取得する

string url = ""; 
    if (webBrowser1.Url != null) 
    { 
     url = webBrowser1.Url.AbsoluteUri; 
    } 
    if (url == "www.google.com") 
    { 
     label9.Text = url; 
    } 
+0

本当に悪い解決法の男... – walther

2

Urlプロパティは、コントロール刚性nullままになりますがそのようにこれを使用してレンダリングされる

webBrowser1.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(webBrowser1_DocumentCompleted); 
+0

どうすればそれをタイマーに実装できますか? –

+0

ボタンクリックイベントハンドラレジスタDocumentCompleted – ionden

0

URLを設定していない(Webブラウザ内にページが読み込まれていない)。これを試すことができます:

webBrowser1.Url = new Uri( "http://www.google.com"、UriKind.Absolute);

URLを次のように取得します。webBrowser1.Url.ToString();

ページが読み込まれるまで待ってから、ボタンを押します。

0

私はこの上のIDのコメントを考えて、私は文字通りので、あなたのブラウザのフォームをダブルクリックし、それもハンドラに行くことができます、私はちょうど

を入れcombotextboxを使用して

"webBrowser1.Url.AbsoluteUri;" 

と私の場合イムにしました

"combobox1.text= webBrowser1.Url.AbsoluteUri;" 

これは私のために今働きます。あなたは時間通りに私を得たが、あなたがチェックする必要があるものは何でも、あなたのbrowser1がchromiumwebbrowserがある場合は、あなたのURLが

0

、その後、

string url = browser1.Address; 

コールのURLを使用するあなたが使用しているものは何でもcombobox1.textかをチェックしますあなたはそれを得るでしょう。

関連する問題