none
frameset下,如何使用webBrowser来获取子frame页的内容 RRS feed

  • 问题

  • 我想要获取一个frameset下的某个页面的内容,以便监视用户的操作是否正确,frame的位置不一定,有可能是多层嵌套,
    如果单独打开BHO_test.html的话,就可以正常获取内容,如果是frameset下的话,就只能获取到frameset的内容,
    请教各位,是我的思路有错误还是代码有问题

    public void OnDocumentComplete(object pDisp, ref object URL)
            {
                document = (HTMLDocument)webBrowser.Document;
                System.Windows.Forms.MessageBox.Show(URL.ToString());//获取每个frame的地址

                

                if (URL.ToString().Contains("BHO_test.html"))//循环每个frame页,找到所需要的页
                {
                    SHDocVw.IWebBrowser2 doc = pDisp as SHDocVw.IWebBrowser2;//尝试获取子frame

                    System.Windows.Forms.MessageBox.Show(pDisp.ToString());//弹出System._ComObject
                    System.Windows.Forms.MessageBox.Show(doc.LocationURL.ToString());


                    IHTMLElementCollection tempElement = document.getElementsByTagName("title");//获取title,弹出的是frameset的titlte
                    foreach (IHTMLElement title in tempElement)
                    {
                        System.Windows.Forms.MessageBox.Show(title.innerText);//始终获取的都是frameset的title
                    }
                }
    }
    2010年4月9日 2:57

答案