Web浏览器控制访问新窗口的文档

时间:2010-04-09 23:17:03

标签: c# browser

我在C#winforms应用程序中托管WebBrowser控件。单击主页面上的按钮后,应用程序将打开一个新窗口,并在新窗口中执行所有操作。从C#主机应用程序如何访问新浏览器窗口的文档? we.bbrowser的Document属性仍然给我原始文档而不是新窗口的文档。

任何帮助非常感谢

1 个答案:

答案 0 :(得分:3)

我在谷歌搜索后找到了答案。

SHDocVw.WebBrowser_V1 browser = webBrowser.ActiveXInstance as SHDocVw.WebBrowser_V1;
browser.NewWindow += new SHDocVw.DWebBrowserEvents_NewWindowEventHandler(browser_NewWindow);

void browser_NewWindow(string URL, int Flags, string TargetFrameName,
                       ref object PostData, string Headers, ref bool Processed)
{
    Processed = true;
    this.webBrowser.Navigate(URL);
}

技巧是本机窗口事件处理程序,并且webBrowser.Nagivate将使其在当前窗口中导航。

要使用SHDocVw命名空间,必须将Microsoft Internet Controls COM对象添加到项目引用中。