Silverlight专题(1)-构建第一个Silverlight应用程序

概述:

本系列文章的原型源自实际的项目。使用Silverlight 2 Beta2,底层语言使用C#。希望对大家的Silverlight 2的入门有所帮助。

 

本文为本专题的第一篇文章,为了文章的完整系统性,将做一下重复性工作,创建第一个Hello World Silverlight Demo

创建项目:

 安装完引言提到的所有工具后,启动VS2008并选择创建新项目(快捷键CTRL+SHIFT+N),选择Silverlight Tab

 将可以看到两个模板,选择Silverlight Application模板:

接下来就是添加下托管Silverlight Application的Asp.Net Web Site或者Web Application Project

我一般习惯性的选择后一项

咱们的第一个Silverlight应用程序已经创建成功,如下图所示

 

在这里我对默认设置做点修改,修改默认的名字空间如下(需要右键选择HelloWorldDemo Project,不是HelloWorldDemo Solution,并选择Properties):

保存后删除默认的Page.xaml文件,并添加一个新的Silverlight User Control,如下

 

 

并修改App.xaml以及App.xaml.cs文件的名字空间为上面设置的名字空间

接下来修改StartUp Object

还是进入设置页面,修改如下图所示:

最后修改App.xaml.cs中的默认启动的RootVisual(由于我已经将Page.xaml删除,所以现在已经没有Page这个对象了,替换成创建的HelloWorld对象)

现在你可以按CTRL+F5启动网站了,但是你将只看到一片空白,这是因为默认的加入的是一个背景为白色的Grid

需要你添加控件到Grid中来丰富页面

添加控件:

添加一个TextBlock到页面中,如下

上面我对TextBlock设置了字体大小,并将其在Grid中的位置设置为居中,另外我添加MouseLeftButtonDown事件(也就是鼠标左键按下的动作)

再次启动网站你将看到我们的第一个丰富的界面(虽然还是有点丑,但是至少有内容了)

添加MouseLeftButtonDown事件的底层控制代码如下(在HelloWorld.xaml.cs文件中):

再次重新启动网站,左键点击Hello World那块区域,上面的字将替换成Silverlight, Superb, 如下

架设Silverlight服务器:

有了好东西,大家肯定想和别人分享下

那么如何架设支持Silverlight的Web服务器呢

首先你还是按照添加经典Asp.Net网站来添加当前的Silverlight网站

(具体如何做大家应该都会,这里就不赘述了)

接下需要给当前的网站添加如下MIME Types

(这是很重要的一步,我使用的是IIS,Apache等非微软的Web服务器也能架设Silverlight)

  .xaml application/xaml+xml
  .xap application/x-Silverlight-app

如果要支持WPF和Clickonce应用程序,需要添加如下MIME Types

  .manifest application/manifest
  .application application/x-ms-application
  .xbap application/x-ms-xbap
  .deploy application/octet-stream
  .xps application/vnd.ms-xpsdocument

到这里咱们的第一步就大功搞成了

你已经可以创建Silverlight应用程序

将架设了一个可供别人访问的Silverlight Enable网站

标签: Silverlight
posted @ 2008-08-31 01:09 ibillguo 阅读(3412) 评论(15) 编辑 收藏

 回复 引用   
#1楼2008-08-31 06:38 | asas[未注册用户]
这文章能不上首页不,搁新手区吧
 回复 引用 查看   
#2楼2008-08-31 07:47 | 心随我动      
到现在你可以按CTRL+F5启动网站了,出错了??
当前上下文中不存在名称“InitializeComponent”

 回复 引用 查看   
#3楼2008-08-31 08:33 | 生鱼片      
楼主的图片可以小点
 回复 引用 查看   
#4楼[楼主]2008-08-31 10:40 | ibillguo      
@心随我动
可以了,你是为什么出错呢?
中间我做了一些设置上的处理
你如果是新手可能按照默认的就好了
也就是不用修改名字空间
和删除Page这个Silverlight UserControl
并创建一个新的UserControl

 回复 引用 查看   
#5楼[楼主]2008-08-31 10:41 | ibillguo      
@asas
我说过了,为了文章的完整性,所以刚刚开始还是放置点hello world的文章
后面肯定会有high level些的文章的

 回复 引用 查看   
#6楼[楼主]2008-08-31 10:42 | ibillguo      
@心随我动
如果你按照文章的步骤坐下来
可能忘记做下面这一步了
“并修改App.xaml以及App.xaml.cs文件的名字空间为上面设置的名字空间”


 回复 引用 查看   
#7楼[楼主]2008-08-31 10:43 | ibillguo      
@生鱼片
好的,谢谢您的建议
下次改进

 回复 引用   
#8楼2008-08-31 15:10 | cobrayang[未注册用户]
很精美的截图,我喜欢
 回复 引用 查看   
#9楼2008-09-01 06:57 | 心随我动      
哦,早上我重弄一遍,,不好意思,我只改了App.xaml.cs,没改App.xaml,成功了,谢谢!!
 回复 引用 查看   
#10楼2008-12-08 00:32 | wrafe      
问一个简单的问题,能不能在VS2005中开发silverlight应用程序??
 回复 引用 查看   
#11楼[楼主]2008-12-08 14:37 | ibillguo      
@wrafe
不能,呵呵
只能在VS2008 SP1上

 回复 引用 查看   
#12楼2009-01-18 19:17 | wmt      
很好
 回复 引用 查看   
#13楼2009-06-11 16:26 | 老鼠      
您好,能把如何架设详细一点说说吗?谢谢
 回复 引用 查看   
#14楼[楼主]2009-06-14 16:13 | ibillguo      
@老鼠
你指架设Silverlight服务器??

 回复 引用 查看   
#15楼2012-02-01 17:38 | 粗野之人 村夫      
very good!