各位,看过来 DocumentCompleted 不执行

雷肿么了 2016-03-17 09:25:53
问题:
我在Winform 中拉了个Webbrowser 控件,
然后在winform load 事件中 myBrowser.Navigate("http://www.ebay.com");
但是,只要导航到这个网址,就不会触发 DocumentCompleted 事件,不知为何,求解 ?
...全文
596 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
threenewbee 2017-12-30
  • 打赏
  • 举报
回复
看看beforenavigation能执行么
qq_26742261 2017-12-29
  • 打赏
  • 举报
回复
frame无法打开,那么DocumentCompleted这个事件是无法执行
雷肿么了 2016-03-24
  • 打赏
  • 举报
回复
别沉了。 别沉了。 
  • 打赏
  • 举报
回复
试了一下,完全可以触发触发事件。总共只写一条语句,所以也没有任何意外。
雷肿么了 2016-03-22
  • 打赏
  • 举报
回复
别的网址是可以触发DocumentCompleted 但是只要跳转 http://www.ebay.com 就不触发DocumentCompleted ! 这就是重点,求解 ?
xdashewan 2016-03-22
  • 打赏
  • 举报
回复
引用 6 楼 z307755214 的回复:
“ 或者是有不定长的块状数据需要持续接收 ” 这个我在谷歌浏览器里查看过,基本可以排除
你看一下浏览器能否正常收完所有数据,也就是浏览器那个loading小圈不再转动
雷肿么了 2016-03-22
  • 打赏
  • 举报
回复
引用 7 楼 xdashewan 的回复:
[quote=引用 6 楼 z307755214 的回复:] “ 或者是有不定长的块状数据需要持续接收 ” 这个我在谷歌浏览器里查看过,基本可以排除
你看一下浏览器能否正常收完所有数据,也就是浏览器那个loading小圈不再转动[/quote] 确认过是OK 的。
雷肿么了 2016-03-22
  • 打赏
  • 举报
回复
引用 5 楼 xdashewan 的回复:
应该不会啊,难道那个网站的http协议不够正确,比如contentlength比实际内容要大,导致无法接受完成。或者是有不定长的块状数据需要持续接收,导致无法完成
“ 或者是有不定长的块状数据需要持续接收 ” 这个我在谷歌浏览器里查看过,基本可以排除
xdashewan 2016-03-22
  • 打赏
  • 举报
回复
应该不会啊,难道那个网站的http协议不够正确,比如contentlength比实际内容要大,导致无法接受完成。或者是有不定长的块状数据需要持续接收,导致无法完成
雷肿么了 2016-03-22
  • 打赏
  • 举报
回复
引用 3 楼 sp1234 的回复:
试了一下,完全可以触发触发事件。总共只写一条语句,所以也没有任何意外。
@以专业开发人员为伍 ,我在 form 窗体拉了Webbrowser控件,叫myBrowser ,但myBrowser_DocumentCompleted不执行

  private void MyTestForm_Load(object sender, EventArgs e)
        {                     
            myBrowser.Navigate("www.ebay.com");            
        }

        private void myBrowser_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
        {
            //这里进不来!!!
            MessageBox.Show("进来了!");
        }
jmyz_0455 2016-03-18
  • 打赏
  • 举报
回复
你的意思是换别的网址能触发? 能贴多点代码吗,感觉是你别的地方写错了
获取Cookie [DllImport("wininet.dll", CharSet = CharSet.Auto, SetLastError = true)] static extern bool InternetGetCookieEx(string pchUrl, string pchCookieName, StringBuilder pchCookieData, ref System.UInt32 pcchCookieData, int dwFlags, IntPtr lpReserved); private static string GetCookieString(string url) { uint datasize = 1024; StringBuilder cookieData = new StringBuilder((int)datasize); if (!InternetGetCookieEx(url, null, cookieData, ref datasize, 0x2000, IntPtr.Zero)) { if (datasize < 0) return null; cookieData = new StringBuilder((int)datasize); if (!InternetGetCookieEx(url, null, cookieData, ref datasize, 0x00002000, IntPtr.Zero)) return null; } return cookieData.ToString(); } private void webBrowser1_DocumentCompleted_1(object sender, WebBrowserDocumentCompletedEventArgs e) { richTextBox1.Text = string.Empty; if (cbcookie.Checked) { if (checkBox1.Checked) { richTextBox1.Text = GetCookieString(textBox1.Text.Trim()); } else { richTextBox1.Text = webBrowser1.Document.Cookie; } } } 复制代码 //本事件是当每次加载完成当前页面后才会执行的 private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e) { //e.Url是当前加载的页面, if (e.Url.ToString().Contains("http://www.3yeah.com")) { //执行操作1 } else if (e.Url.ToString().Contains("http://baidu.com")) { //执行操作2 } } 复制代码 private void webBrowser1_NewWindow(object sender, CancelEventArgs e) { if (cbwindownew.Checked) { string url = ((System.Windows.Forms.WebBrowser)sender).StatusText; webBrowser1.Navigate(url); e.Cancel = true; } } 复制代码

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧