• C# 中控件 WebBrowser 对 frameset/ iframe 操作和内容获取


    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");
    }

  • 相关阅读:
    C++高精度乘法
    经典的7种排序算法 原理C++实现
    c++ STL
    二分查找c++
    洛谷P1111 修复公路
    01背包写法
    c++编码规范
    github教程
    windows10锁定屏幕聚焦图片导出
    week 6 Spring history and design philosophy
  • 原文地址:https://www.cnblogs.com/zhengmy/p/3783483.html
Copyright © 2020-2023  润新知