您好 我在C Sharp开发IE工具栏,访问IE中显示的页面的html源并处理它。我依赖于ondocumentcomplete事件处理程序。触发时,会获取html源代码。但是我有一个有帧的页面有问题,因为每个帧都会触发ondocumentcomplete,最后一个是outter frame,即窗口。为了解决这个问题,我确实喜欢这个 -
public void OnDocumentComplete(object pDisp, ref object URL)
{
if (pDisp.Equals(Explorer.IWebBrowser_Parent))
{
// check for frames n get the source of all
}
else
// ignore
}
像这样,我能够获得所有帧的来源。
但问题是对于某些具有框架或iframe的页面,不会为窗口触发ondocumentcomplete。所以上面的代码不会处理任何这样的 - 例如
http://www.w3schools.com/html/tryit.asp?filename=tryhtml_intro
触发该网址的ondocumplete,
然而点击编辑并单击我按钮虽然重新加载框架,但没有触发ondocumentcomplete窗口。如何解决这个问题?
答案 0 :(得分:0)
问题似乎是:我如何知道何时停止接收请求中的数据?
如果你这样说,你可能会在你做的时候理解,也就是说,你没有得到更多的数据(设置一个计时器来检查),或者关闭页面的连接等等。