WPF下抑制WebBrowser不停弹出各种脚本错误

原文:WPF下抑制WebBrowser不停弹出各种脚本错误

WPF下的WebBrowser没有直接抑制错误弹出的方法或者属性,MSDN上提供解决方案如下:

       static void SuppressScriptErrors(WebBrowser webBrowser, bool hide)
        {
            webBrowser.Navigating += (s, e) =>
            {
                var fiComWebBrowser = typeof(WebBrowser).GetField("_axIWebBrowser2", System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.NonPublic);
                if (fiComWebBrowser == null)
                    return;

                object objComWebBrowser = fiComWebBrowser.GetValue(webBrowser);
                if (objComWebBrowser == null)
                    return;

                objComWebBrowser.GetType().InvokeMember("Silent", System.Reflection.BindingFlags.SetProperty, null, objComWebBrowser, new object[] { hide });
            };
        }

在加载页面之前调用该方法设置hide为true就能抑制错误的弹出了。

达叔傻乐 (darwin.zuo@163.com)

WPF下抑制WebBrowser不停弹出各种脚本错误

上一篇:WPF中使用TextBlock显示长字符串的处理方法


下一篇:C# WPF遮罩对话框(Popup Message Overlay/ Dialog Host)