3

在 Silverlight 3.0 中,我们现在可以使用导航框架创建具有多个页面的应用程序,我的问题是:

当我们运行应用程序时,整个应用程序是立即加载还是在我们导航到特定页面时加载?

这对于那些想要创建一个加载速度非常快的应用程序的人来说可能很重要,如果一切都在开始时加载,整个用户体验可能会变得像一场噩梦,因为他们必须等待很长时间。

谢谢你。

4

2 回答 2

1

整个正在执行的XAP 被加载到内存中。这不太重要,因为定义页面并不是工作的大部分。大部分工作是构建页面然后渲染。在页面导航到之前,不会构建/渲染页面。

如果您的 XAP 开始变得庞大(导致初始下载需要一些时间),您可以通过使用 WebClient 延迟加载 XAP 或程序集来解决该问题。

于 2009-06-01T00:05:34.553 回答
1

嗯……

如果加载了整个 XAP,请检查如何存储在浏览器缓存中。

另一方面,您可以按照markti评论执行部分加载,如何定义您的视图?使用接口合同,因此您可以延迟加载视图以按需显示(主要 XAP 加载应用程序,加上接口程序集,您将视图分为几个 DLL,可能加载了主页,其余的只是在后台加载)。

您也可以使用隔离存储来缓存该 Dll(然后您的应用程序将从本地计算机读取该 Dll)。

http://timheuer.com/blog/archive/2008/09/24/silverlight-isolated-storage-caching.aspx

于 2009-06-01T19:18:04.877 回答