WPF 设置WebBrowser控件不弹脚本错误提示框

时间:2023-03-09 08:23:44
WPF 设置WebBrowser控件不弹脚本错误提示框
using System.Reflection;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Navigation; namespace HC
{
/// <summary>
/// MainWindow.xaml 的交互逻辑
/// </summary>
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
WebBrowserMain.Navigating += WebBrowserMain_Navigating;
} void WebBrowserMain_Navigating(object sender, NavigatingCancelEventArgs e)
{
SetWebBrowserSilent(sender as WebBrowser, true);
} /// <summary>
/// 设置浏览器静默,不弹错误提示框
/// </summary>
/// <param name="webBrowser">要设置的WebBrowser控件浏览器</param>
/// <param name="silent">是否静默</param>
private void SetWebBrowserSilent(WebBrowser webBrowser, bool silent)
{
FieldInfo fi = typeof (WebBrowser).GetField("_axIWebBrowser2", BindingFlags.Instance | BindingFlags.NonPublic);
if (fi != null)
{
object browser = fi.GetValue(webBrowser);
if (browser != null)
browser.GetType().InvokeMember("Silent", BindingFlags.SetProperty, null, browser, new object[] {silent});
}
}
}
}