欢迎光临
我们一直在努力

屏蔽 WPF 程序中 WebBrowser 控件的脚本错误提示

在 WPF 中使用 WebBrowser 控件显示网页时,经常会报脚本错误的提示。通过反射设置静默模式,可以解决该问题:

public void SuppressScriptErrors(WebBrowser wb, bool hide)
{
    FieldInfo fiComWebBrowser = typeof(WebBrowser).GetField("_axIWebBrowser2", BindingFlags.Instance | BindingFlags.NonPublic);
    if (fiComWebBrowser == null) return;

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

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

在 WebBrowser 的 Navigated 事件中调用以上代码即可:

private void WebBrowser_OnNavigated(object sender, NavigationEventArgs e)
{
    SuppressScriptErrors(this.WebBrowser,true);
}

赞(0) 打赏
未经允许不得转载:码农很忙 » 屏蔽 WPF 程序中 WebBrowser 控件的脚本错误提示

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

给作者买杯咖啡

非常感谢你的打赏,我们将继续给力更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫打赏

微信扫一扫打赏