htmlを生成してShDocVw.InternetExplorerに読み込ませ、イベントを発火させる
iframeなどを含むhtmlを作り、ローカルに保存。
それをSHDocVw.InternetExploreに読み込ませた際にキャッシュが効くなどして
DocumentComplete, NavigateComplete2などのイベントが発火しないときがある。
こういった場合には、いったんNavigateメソッドでabout:blankを開かせ、
さらに生成したhtmlをファイルに保存することなくbody.innerHTMLに代入することで、
イベントを強制的に発火させることが可能。
/// <summary> /// DocumentComplete /// </summary> /// <param name="pdisp"></param> /// <param name="e"></param> public void DocumentComplete(object pdisp, ref object e) { IWebBrowser2 iwb = (IWebBrowser2)pdisp; mshtml.IHTMLDocument2 hi = (mshtml.IHTMLDocument2) iwb.Document; string html = hi.body.innerHTML; } /// <summary> /// フォームロード時処理 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void Form1_Load(object sender, EventArgs e) { ie = new SHDocVw.InternetExplorer(); ie.WebWorkerStarted += new DWebBrowserEvents2_WebWorkerStartedEventHandler(ie_WebWorkerStarted); ie.DocumentComplete += new DWebBrowserEvents2_DocumentCompleteEventHandler(this.DocumentComplete); ie.NavigateComplete2 += new DWebBrowserEvents2_NavigateComplete2EventHandler(this.DocumentComplete); ie.DownloadComplete += new DWebBrowserEvents2_DownloadCompleteEventHandler(ie_DownloadComplete); //ie.BeforeNavigate2 += this.DocumentBefore(); ie.FileDownload += new DWebBrowserEvents2_FileDownloadEventHandler(ie_FileDownload); ie.DownloadBegin += new DWebBrowserEvents2_DownloadBeginEventHandler(ie_DownloadBegin); ie.BeforeNavigate2 += new DWebBrowserEvents2_BeforeNavigate2EventHandler(ie_BeforeNavigate2); ie.BeforeScriptExecute += new DWebBrowserEvents2_BeforeScriptExecuteEventHandler(ie_BeforeScriptExecute); ie.Visible = true; ie.Navigate("about:blank"); } /// <summary> /// 実際に生成したHTMLを代入。このボタン処理後、DocumentCompleteイベントが発火する /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void button2_Click(object sender, EventArgs e) { ((mshtml.IHTMLDocument2)ie.Document).body.innerHTML = @"<iframe src="" https://www.amazon.jp/reviews/iframe?akid=**************&alinkCode=xm2&asin=B00V7Q9IX6&atag=bonkagu0a-22&exp=2017-03-16T00%3A03%3A30Z&v=2&sig=7n6X8poGaYB9%2FVkjuCZlskw991lJMzrdqhkq%2B4v74mk%3D "" width=""1000"" height=""1000"">〜</iframe>"; }