一个网页中分上左右三个框架(假设为ABC),如果想操作右框架中的网页元素(比如C框架中的一个表单文本框),用webbrowser控件怎样访问?希望给出相关代码

解决方案 »

  1.   

    是不是webbrowser这个控件比较少用..达人来帮帮忙
    webBrowser.Document.Window.Frames[x].Document.All[""]
    这样访问可以么?
      

  2.   

    大概是这样
    //项目中添加Micrsoft.mshtml引用
    using mshtml;//frame结构private void webBrowser1_Navigated(object sender, WebBrowserNavigatedEventArgs e)
    {
        IHTMLDocument2 vDocument = (IHTMLDocument2)webBrowser1.Document.DomDocument;
        foreach (IHTMLElement vElement in vDocument.all)
            if (vElement.tagName.ToUpper() == "FRAME")
            {
                IHTMLFrameBase2 vFrameBase2 = vElement as IHTMLFrameBase2;
                //todo : vFrameBase2,vFrameBase2.contentWindow
            }
    }
    另外,如果是跨域名的框架出于安全考虑是不允许访问其元素的
      

  3.   

    webBrowser控件貌似用得比较少,有没达人帮帮忙
    webBrowser.Document.Window.Frames[x].Document.All[""]
    这样访问可以吗?