我有一个包含一行代码的Silverlight 3应用程序(它是真实项目的一部分):
var doc = HtmlPage.Document;在Safari5.1(Windows7 SP1,Silverlight plugin 5.0.61118.0)中,我得到了下面这一行的异常:
无法将System.Windows.Browser.HtmlElement类型的对象强制转换为System.Windows.Browser.HtmlDocument类型
因此,我没有任何访问浏览器DOM模型的权限。在其他浏览器中,一切都是正常的。
如果可能的话,有人能帮我一下吗?
发布于 2012-01-17 08:00:22
我也有同样的问题,它似乎只发生在Safari for Windows的Silverlight插件5.0.61118.0上。这个问题似乎是在Silverlight 5.0中引入的。
此外,您不能访问: HtmlPage.Window
根据微软官方的说法,Safari for Windows不是一个支持平台,请参阅:http://www.microsoft.com/getsilverlight/Get-Started/Install/Default.aspx (点击系统要求)
在我的测试中,我发现这个问题在Silverlight 4中不会发生,但在Silverlight 5中确实会发生。
这有点令人困惑,因为如果您尝试通过以下链接在Safari for Windows上安装Silverlight 4:
http://go.microsoft.com/fwlink/?LinkID=149156&v=4.0
然后您最终安装了Silverlight5。
我发现你使用IE访问这个链接,然后保存下载的EXE,然后在Safari for Windows上安装EXE,你会得到一个Silverlight 4安装,从我的测试中这是有效的。因此,我建议面临这个问题的客户按照说明安装Silverlight 4。
发布于 2012-03-14 23:42:03
尝试一下,看看这是否有效(我的应用程序使用导航框架):
由于该错误与NavigationJournal有关,并且在SL中我们可以对其进行一些控制,因此我将日志所有权更改为:
sdk:Frame JournalOwnership="OwnsJournal"在我的应用程序中进行导航的MainPage.xml上。这样,我们就失去了浏览器的后退按钮/导航,但我们可以在SL应用程序中实现我们自己的。
https://stackoverflow.com/questions/8851673
复制相似问题