【发布时间】:2011-06-30 00:57:38
【问题描述】:
我们看到在 IE 上、在某些机器上、在某些配置中使用 Silverlight 4 时出现了一些疯狂的行为。这是场景
1) 我们自己的自定义Sharepoint WebParts中使用的Silverlight控件(使用标签加载)
2) 一个页面上有 2 个包含 Web 部件的 Silverlight 实例。这意味着 2 个对象标签,都指向同一个 XAP 文件,但从该 XAP 加载不同的用户控件
在某些页面(但不是全部)上,Silverlight 加载似乎卡住了。 Silverlight 控件不呈现,对象标签的 onload 处理程序没有被调用,Fiddler 显示 XAP 甚至没有被下载。与 IE 的一些交互(有时它悬停在控件上,有时它单击控件区域)可以再次启动加载过程,xap 将下载,触发 onload,并呈现控件。如果我让它坐很长时间(比如 2-3 分钟),有时加载会恢复并完成(但并非总是如此)。
因为它甚至还没有下载 XAP,所以它不在我们的代码中 - 看起来加载由于某种原因被阻止了。
这只发生在 IE 上,不会发生在 Chrome 或 Firefox 上。我们已经在 IE8 和 IE7 上看到了它。它不会发生在具有 2 个 SL 控件的每个页面上,因此页面内容似乎很重要。我们还看到了在直接 ASP.NET(Sharepoint 之外)上运行 Web 部件的问题,尽管频率要低得多。
我尝试过使用 WinDBG 进行调试,看起来有些线程在 coreclr 的内部,但没有调试符号,所以我无法推断出太多。
【问题讨论】:
-
当我切换到使用Javascript API来实例化控件而不是对象标签时,问题就消失了。
-
这可能会对最终访问此链接的人有所帮助:[stackoverflow.com/questions/25857973/… [1]:stackoverflow.com/questions/25857973/…
-
这可能会对最终访问此链接的人有所帮助:[stackoverflow.com/questions/25857973/… [1]:stackoverflow.com/questions/25857973/…
标签: silverlight