zoukankan      html  css  js  c++  java
  • c#禁止Webbrowser控件的弹出脚本错误对话框

    这不是一个新问题,网上讨论此问题的帖子不少,说什么的都有,今天做个总结。
    当我们使用WebBrowser控件时弹出错误信息框,而且会让一些自动执行的程序暂停,如何禁用呢?

    将WebBrowser控件ScriptErrorsSuppressed 设置为True,可禁止弹出脚本错误对话框,ScriptErrorsSuppressed属性是对其基础COM控件的Silent属性的封装,因此设置ScriptErrorsSuppressed属性和设置其基础COM控件的Slient属性是效果一样的,这一点通过反编译System.Windows.Forms程序集可以证实。

    为了解决这个问题,有的人专门从WebBrowser派生出一个新类,然后重写了AttachInterfaces方法,其实也是没有必要的,效果和直接设置ScriptErrorsSuppressed属性相同。

    不过要注意的是:
    ScriptErrorsSuppressed 设置为True会禁用所有的对话框,比如提示Activex下载、执行以及安全登录等对话框。
    如果不想禁止除脚本错误之外的对话框,请使用MSDN上的代码示例:

    private  void browser_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
    {
        ((WebBrowser)sender).Document.Window.Error += new HtmlElementErrorEventHandler(Window_Error);
    }

    private void Window_Error(object sender, HtmlElementErrorEventArgs e)
    {
        // Ignore the error and suppress the error dialog box.
        e.Handled = true;
    }

  • 相关阅读:
    c# 暴力破解中文编码方式
    vs调试 不能进入断点
    shell-的bash内部命令变量介绍与shift等
    shell-的特殊变量-难点理论
    shell-的特殊变量-进程状态变量$$ $! $? $_详解
    shell-的特殊变量-位置变量$0 $n $* $# $@详解
    shell-的变量-局部变量
    shell-的变量-全局变量
    shell-脚本开发基本规范及习惯
    shell-脚本的执行
  • 原文地址:https://www.cnblogs.com/hackpig/p/1668364.html
Copyright © 2011-2022 走看看