[原文发表地址]:Giving VS Express website a new life with Silverlight
[原文发表时间]:Friday, March 21, 2008 8:26 PM

我们最近更新了Visual Studio Express Editions的网站,启用了Silverlight支持。

我们并不是单纯地毫无想法地把新东西扔到已存在的网站上。我很欣赏网站现在的样子,对于那些正在考虑是否要在自己的网站上添加Silverlight的人来说,这也是一个值得研究的有趣案例。

据开发团队说,将一个静态html网站变成Silverlight网站是充满乐趣的过程。我们有两个人做这项工作:一个开发人员负责写XAML和JavaScript代码,还有一个graphic设计师。我们想要确保这个网站能够清楚地传递如下信息:Visual Studio Express版本的特性,VS Express如何帮助人们,以及如何通过学习和使用VS Express来获益。因此,我们将网站的风格保持为简洁和轻量级(没有很多复杂结构页面),但同时,我们也使它看上去很酷,而且很前卫。我们也不想完全重写已经存在的网站,所以我们重用了已有的图形。

每个Express产品都有许多我们想要展示的,但我们的目标是保持“轻薄”。之前的Visual Studio Express站点有Product Tours(产品漫游),我们想继续提供这一功能。但是使用静态HTML就意味着大量的HTML编程,页面数量的巨幅增加,以及过于复杂的菜单导航。Silverlight提供了最好的解决方案——它允许我们在每个产品的截图上创建hot spots,并绑定一幅图片。使用Silverlight,我们能包含大量交互内容和许多的图形链接,而不是在核心导航页上拆分出HTML页面。由此可以获得流畅的终端用户体验。

我们在Microsoft Expression Blend中重新组织了图形页面的布局,为所有新的动态特性添加了面板和按钮。Blend也允许我们添加过渡动画,比如面板的打开和关闭,以及按钮的翻转效果。我们开发了一个Javascript类,来绑定交互功能,并提供来自外部XML数据源的内容的接口。最终的应用程序与其他HTML元素一起嵌入在分层的网页中。Blend允许我们在开发过程中轻松地创建和改变用户界面动画。这有助于整个界面的视觉一致性,也有助于为用户界面创建小的视觉提示。

一个主要的目标是使网站的访问者不论安装Silverlight与否,都可以访问网站的内容。要达到这一目标,我们在客户端利用了一段简单的JavaScript测试。如果访问者没有安装Silverlight,则页面上包含Silverlight内容的区域会被调整大小,填充进“安装Silverlight”的链接,并显示在页面的中心位置。我们设置了一个定时器来定期地检查用户是否安装了Silverlight,以便在用户安装Silverlight之后启动Silverlight内容。这一特性使得用户不用手动刷新窗口。如果Silverlight被安装了,默认的内容就会被隐藏起来。我们引进了一个InplaceInstallPrompt属性调用来创建Silverlight,以确保使用者不用跑到一个新的页面来安装Silverlight。这为访问者提供了更好的用户体验,因为完整的Silverlight安装将在网站的上下文之中发生。计时器将确保一旦Silverlight被安装,新的内容就被显示出来。

在这一项目中我们利用的工具和frameworks包括Silverlight 1.0 runtimeSilverlight SDK,以及Visual Studio 2008 Team Suite,Expression Blend,Microsoft Silverlight Tools Beta 1 for Visual Studio 2008

在随后的时间里,我们将逐步将越来越多的网站Silverlight化,以提供更丰富的,令人身临其境的体验。

Namaste!