我使用WebBrowser控件构建了一个C#应用程序,并且我试图找出一种方法来让网页中的Flash内容不显示,因为它是吸吮我的CPU和内存的一个吨。我一直试图通过browser.Document.GetElementsByTagName(“object”)获取它并将其outerHtml设置为空字符串,从而在页面中删除<object>
标记(只有一个)。它返回一个元素(由Count属性确认),但访问第一个元素([0])给出的索引超出范围错误。我试过通过foreach循环来做,但没有任何反应,也没有任何错误。如果我尝试检索<div>
元素而不是<object>
元素,则会运行foreach循环。我在这里做错了什么,有没有错误,或者有更好的方法来删除Flash内容?任何帮助不胜感激。如何在Web浏览器控件中阻止Flash元素
我的代码:
顺便说一句,这是正在运行后DocumentCompleted事件已被解雇。
编辑:我刚才发现,当DocumentCompleted事件被调用时,它在JavaScript将Flash内容注入页面之前被调用。我尝试了一些类似“睡眠”的方法,但它们都阻止了网页的处理。任何方式等待更多的时间(5秒左右),而网页继续呈现?
webBrowser.Document.All [“flashobjectID”]你可以试试这个..它是一样的东西的getElementById您回应,但 – 2012-01-17 05:54:28
谢谢了''