WPF WebBrowser抑制Suppress 弹出 脚本错误 对话框 但是样式改变 需要继续改善

时间:2021-11-24 02:58:12

using System.Reflection;
using System.Windows.Controls;

2.静态类扩展方法(this)

public static class WebBrowserExtensions
{
public static void SuppressScriptErrors(this WebBrowser webBrowser,bool hide)
{
FieldInfo fInfo = typeof(WebBrowser).GetField("_axIWebBrowser2", BindingFlags.Instance | BindingFlags.NonPublic);
if(fInfo==null)
{
return;
}

object objBrowser = fInfo.GetValue(webBrowser);
if (objBrowser == null)
{
return;
}
objBrowser.GetType().InvokeMember("Silent", BindingFlags.SetProperty, null, objBrowser, new object[] { hide });
}
}

3.调用,

public MainWindow()
{
InitializeComponent();
wb.Navigate("http://www.alibaba.com/");
var browser = wb as WebBrowser;

WebBrowserExtensions.SuppressScriptErrors(browser, true);
}

4.总结。

实现了不弹出脚本错误提示框,但是网页本身的样式也已经改变,需要捕捉异常,处理。

WPF WebBrowser抑制Suppress 弹出 脚本错误 对话框 但是样式改变 需要继续改善