现在的位置: 首页 > 综合 > 正文

利用webBrowser获取页面iframe中的内容

2012年07月19日 ⁄ 综合 ⁄ 共 936字 ⁄ 字号 评论关闭

1.获取frame的document

  HtmlDocument htmlDoc = webBrowser1.Document;
  htmlDoc = webBrowser1.Document.Window.Frames["frmRpt"].Document;

  "frmRpt"为iframe的name;

2.获取frame的源文件

MessageBox.Show(webBrowser1.Document.Window.Frames["main"].Document.Body.InnerHtml);

3.获取frame的HTMLDocument接口

HTMLDocument doc = (HTMLDocument)webBrowser1.Document.DomDocument;
object j;
for (int i = 0; i < doc.parentWindow.frames.length; i++)
{
       j = i;
       HTMLWindow2Class frame = doc.parentWindow.frames.item(ref j) as HTMLWindow2Class;
       if (frame.name == "main")
        {                  
              MessageBox.Show(frame.document.title);                   
        }
}     

4.获取frame的IHTMLDocument2接口

IHTMLDocument2 doc = (IHTMLDocument2)webBrowser1.Document.Window.Frames["main"].Document.DomDocument;

5.取得frame中被点击的连接

private void webBrowser1_Navigating(object sender, WebBrowserNavigatingEventArgs e)
{
      string url = webBrowser1.Document.Window.Frames["main"].Document.ActiveElement.GetAttribute("src");
}

抱歉!评论已关闭.