当前位置:编程学习 > C#/ASP.NET >>

C#WebBrowser问题,急


private void Form1_Load(object sender, EventArgs e)
        {
            this.webBrowser1.Navigate("http://item.taobao.com/item.htm?id=9957568447");
        }

        private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
        {
            if (this.webBrowser1.ReadyState != WebBrowserReadyState.Complete) return;

            foreach (HtmlElement archor in this.webBrowser1.Document.Links)
            {
                archor.SetAttribute("target", "_self");
            }
        }

        private void webBrowser1_NewWindow(object sender, CancelEventArgs e)
        {
            e.Cancel = true;
        }


窗体代码如上

为什么点击这里的链接点击不了?

着实不懂?高分求大神,急 WebBrowser --------------------编程问答-------------------- 顺便问一下怎样清楚WebBrowser缓存 --------------------编程问答-------------------- 分不够可以加! --------------------编程问答-------------------- 点击那些链接页面不跳转,点击其它链接会 --------------------编程问答-------------------- 不能点击的连接是因为你在newwindow事件中写了e.Cancel = true; 另外你在documentcomplete中虽然写了连接target的替换,但是不能点的链接是ajax加载出来的,所以就没有替换。最终导致你不能点击 --------------------编程问答-------------------- 你可以把Complete事件去掉。然后把newwindow事件改为
 private void webBrowser1_NewWindow(object sender, CancelEventArgs e)
        {
            e.Cancel = true;

            HtmlElement link = this.webBrowser1.Document.ActiveElement;
            string url = link.GetAttribute("href");
            if (!string.IsNullOrEmpty(url))
                this.webBrowser1.Navigate(url);
        }
但是这样会有一个问题就是,如果网页中用到a 的click事件来window.oepn的话 就又有问题了。
你自己看吧。 --------------------编程问答-------------------- 求解决方案 --------------------编程问答-------------------- 还是谢谢5L回复
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,