c# - BHO OnDocumentComplete 仅适用于顶部框架?

标签 c# iframe bho

我正在 CSHARP 中开发 BHO,但 onDocumentComplete 方法存在问题。
它在主文档加载的每个 IFRAME 上运行。我怎样才能避免它?我只想处理主窗口中的事件。

public void OnDocumentComplete(object pDisp, ref object URL)
  {
      document = (HTMLDocument)webBrowser.Document;    
      document.body.style.backgroundColor = "red";
  }

最佳答案

this.sitepDisp 进行比较。如果它们相等,则代码在主框架中运行:

public void OnDocumentComplete(object pDisp, ref object URL)
{
    if (pDisp != this.site) {
        // Ignore subframes
        return;
    }
    document = (HTMLDocument)webBrowser.Document;    
    document.body.style.backgroundColor = "red";
} 

关于c# - BHO OnDocumentComplete 仅适用于顶部框架?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21406519/

相关文章:

c# - 使用 linq 查询输出列表/其他数据结构

c# - 始终执行条件中间件

c# - XNA 内容管道教程

html - Iframe,嵌入 youtube 不适用于 firefox

java - 在我的应用程序中将外部网页显示到网页中

multithreading - 在异步可插拔协议(protocol)线程中 - 如何将其关联/解析到实现::SetSite() 的特定 COM 对象?

javascript - 如何使用 C# MVC4 调用 $.ajax 中的错误函数?

html - 固定 div 和 iframe 元素内部

C# : Lower integrity of named pipes

c# - 想要在嵌入标准 C# 应用程序的 WebBrowser 控件中启用 BHO