天天看点

Silverlight 系统初始加载进度条美化

使用Silverlight进行Web开发的都非常熟悉下面的Microsoft自带的进度加载条:

Silverlight 系统初始加载进度条美化

这个美观上先不说,而且和实际的xap加载内容时间上较长,让用户等待时间过长,用户体验差。

这里提供一个方法:

首先看下效果图:

Silverlight 系统初始加载进度条美化

在美观度和加载时间上都有较大改善。

下面将实现方法罗列如下:

1、在网站根目录下增加一个SplashScreen.xaml的文件,你可以新建一个txt文档,然后拷贝下面的代码,然后将后缀名txt修改成xaml即可,里面的图片根据你实际的来,可以使用网络上的绝对路径图片,也可以使用相对路径,图片放在网站根目录下,其中的代码为:

2、在网站的根目录下,修改Silverlight.js文件,在后面追加如下一段js函数:

3、在承载Silverlight的Web网页部分的object标签内增加如下红色部分:

<object data="data:application/x-silverlight-2," type="application/x-silverlight-2"

            width="100%" height="100%">

            <param name="source" value="ClientBin/WebMain.xap" />

            <param name="onError" value="onSilverlightError" />

            <param name="background" value="white" />

            <param name="minRuntimeVersion" value="4.0.50826.0" />

            <param name="autoUpgrade" value="true" />

            <param name="windowless" value="true" />

            <param name="splashscreensource" value="SplashScreen.xaml"/>    

            <param name="onSourceDownloadProgressChanged" value="onSourceDownloadProgressChanged" />

            <a href="http://go.microsoft.com/fwlink/?LinkID=149156&v=4.0.50826.0" style="text-decoration: none">

                <img src="http://go.microsoft.com/fwlink/?LinkId=161376" alt="获取 Microsoft Silverlight"

                    style="border-style: none" />

            </a>

        </object>

经过上面三步后,你就可以看到上图所示的效果啦!

注:更多关于Silverlight、asp.net、WebGIS的技术交流,请关注群:106887513

继续阅读