WebBrowser Controlを使って、任意の値を取得の続きの質問になります。 elems = webBrowser1.Document.GetElementsByTagName("td"); foreach (HtmlElement elem in elems) { string style = elem.Style; if (!(string.IsNullOrEmpty(style)) && style.Contains("font-weight: bold;")) { HtmlElementCollection a = elem.GetElementsByTagName("A"); string href = a[0].GetAttribute("href"); Debug.WriteLine(style); Debug.WriteLine(href); webBrowser1.Navigate(href); //読み込みを待つ処理をここに書く } } WebBrowserControlに表示されている画面からhrefを取得して、Navigateを使って違うページに移動しています。 取得したURLをNavigateを使って順に巡ろうとしているのですが、うまくいきません。 例えば、URLを10取得したとします。最初に取得したURLは問題なくNavigateを使って移動できますが、残りの9つのURLには移動することができません。 ステップ実行で、elems = webBrowser1.Document.GetElementsByTagName("td");の中を確認すると10URL取得できています。 遷移後に再びforeachに戻るとelemsの中身がなくなっています。 なぜこのような事が起こるんでしょうか?解決するにはどうしたらいいのでしょうか?