分享

Webbrowser控件中屏蔽弹出脚本错误对话框

 quasiceo 2012-12-27

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;
}



分享到:
分类: 程序人生
0
0
(请您对文章做出评价)
博主上一篇:利用webBrowser获取页面iframe中的内容
博主下一篇:经验总结:WebBrowser自动点击弹出提示框alert、弹出对话框confirm、屏蔽弹出框、屏蔽弹出脚本错误的解决办法

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多