怎么样使用Splash Screen来过渡基于Silverlight的应用程序的下载过程
2008-10-04 11:37:40 来源:WEB开发网介绍
Microsoft Silverlight 托管代码模型需要将 Extensible Application Markup Language (XAML)的assemblies下载到客户端机器才能够正常呈现出内容.当这些assemblies很小的时候(当然它们一般都会很小), 用户不会受长时间等待的煎熬. 然而, 如果这些assemblies非常的大,你可以想要以显示一个splash screen来替代无聊的漫长的下载过程.
要求 (available from the Silverlight download site):
Microsoft Silverlight 1.1 Alpha.
Microsoft Visual Studio Code Name "Orcas" Beta 1.
Microsoft Silverlight Tools Alpha for Visual Studio Code Name "Orcas" Beta 1.
从非托管代码到托管代码的转换
一般情况下, 一个 splash screen应该从一个非托管的downloader开始.这个 downloader是可以作为普通对象用代码控制的,你可以从 createObject 调用来创建它.当downloader对象引发一个事件时,在非托管代码中,你就可以来进行处理了.
托管 和 非托管的 基于Silverlight的应用程序 的基本区别是是否XAML文件中control使用了x:Class 属性; 如果使用了, 它是一个托管application.在你接收到downloader发来的事件后 , 你可以通过重新载入XAML来使应用程序转换到托管代码方式, 当然这个新的 XAML 包含了 x:Class 属性. 这个 x:Class 属性就可以用才下载好的assembly来进行指向了.
准备 Project 文件
其实这有别的方法来建立这种类型的project, 但是在这个示例中,你将建立一个基本的 Silverlight project然后将添加一个文件来代表非托管方的转换. 你同样需要添加一些虚假的但很大的文件到你的DLL中来, 因为这才可以使用在下载这个大东东的时候你有机会看清楚splash screen.
更多精彩
赞助商链接