在Silverlight中禁用WebBrowser控件中的JavaScript错误
我正在开发Silverlight OOB应用程序,我需要在其中显示网页-我希望通过WebBrowser控制来完成,但在页面加载期间,我会收到很多带有JavaScript错误的消息框 有没有办法隐藏那些留言盒 在winform WebBrowser控件中,可以使用在Silverlight中禁用WebBrowser控件中的JavaScript错误,silverlight,browser,silverlight-oob,Silverlight,Browser,Silverlight Oob,我正在开发Silverlight OOB应用程序,我需要在其中显示网页-我希望通过WebBrowser控制来完成,但在页面加载期间,我会收到很多带有JavaScript错误的消息框 有没有办法隐藏那些留言盒 在winform WebBrowser控件中,可以使用ScriptErrorsAppressed属性,但在SL中没有 非常感谢您的帮助。请尝试在internet Explorer高级设置中关闭脚本调试。最终,该控件使用MSHTML交付渲染,从而从IE获得许多it设置。今天,我在我的应用程序中
ScriptErrorsAppressed
属性,但在SL中没有
非常感谢您的帮助。请尝试在internet Explorer高级设置中关闭脚本调试。最终,该控件使用MSHTML交付渲染,从而从IE获得许多it设置。今天,我在我的应用程序中返回到这个问题,并以某种方式解决了它。因为我只需要显示一个页面,在这些页面上没有太多的用户交互,所以我用这种方式解决了这个问题 在代码中,我创建了一个带有iframe属性
security=“restricted”
的html,然后将url注入这个iframe
我的代码如下所示:
var html = new StringBuilder(@"<html xmlns=""http://www.w3.org/1999/xhtml"" lang=""EN"">
<head>
<meta http-equiv=""Content-Type"" content=""text/html; charset=utf-8"" />
<title>{@pageTitle}</title>
<style type=""text/css"">
html {overflow: auto;}
html, body, div, iframe {margin: 0px; padding: 0px; height: 100%; border: none;}
iframe {display: block; width: 100%; border: none; overflow-y: auto; overflow-x: hidden;}
</style>
</head>
<body>
<iframe id=""tree"" name=""tree"" security=""restricted"" src=""{@PageLink}"" frameborder=""0"" marginheight=""0"" marginwidth=""0"" width=""100%"" height=""100%"" scrolling=""auto""></iframe>
</body>
</html>");
html.Replace("{@pageTitle}", Title);
html.Replace("{@PageLink}", uri.ToString());
var html=新的StringBuilder(@”
{@pageTitle}
html{溢出:自动;}
html,body,div,iframe{margin:0px;padding:0px;height:100%;border:none;}
iframe{display:block;width:100%;border:none;overflow-y:auto;overflow-x:hidden;}
");
替换(“{@pageTitle}”,Title);
Replace(“{@PageLink}”,uri.ToString());
然后我使用WebBrowser
的NavigateToString
方法将我的html加载到它
另外,我添加了这个作为回答来接受这个问题。我已经在IE中禁用了脚本调试,但问题仍然存在。所以这是控件的一个问题。我感觉这可以通过反射来实现,但我看不到任何好的方法;)