还记得微软在4月份Mix 10大会上发布了自己Windows Phone 7手机操作系统.在Silverlight Channel 9 也看了相关讲解视频,其实我对这方面关注比较少.正好昨天在MSDN上下载Window7 developer Tools工具时.碰到关于Silverlight For Windows Phone Developer Tools一些演示说明.作为一个开发者难免总是忍不住想尝试一下新东西.

Silverlight for Windows Phone 差点闹了一个笑话. 很多开发者看到诺基亚Symbian上的Silverlight都出来,那么急于Windows的silverlight 怎么没有反应. 当然微软在移动通信领域也是不甘示弱.虽然Windows Mobile智能操作系统的市场正在被iPhone和Android吞食. 看着自己不争气的Windows Mobile,于是乎在MWC 2010大会发布了Windows Phone 7智能操作系统.

Silverlight for Windows phone之初体验_休闲

关于这次发布Windows Phone 7 特点和意义请查看.Mix10: Windows Phone 7 系列应用和游戏开发内容汇总

当然作为开发人员还是尽快想体验一下关于Silverlight For Windows phone特点.

开发前准备:

A:操作系统要求Windows7或Vista SP2. 对于使用XP系统Developer 很遗憾. 随便说一下官方对硬件要求:硬盘3G,内存 2G,最关键必须还需要一块支持DirectX 10的显卡.

B:下载并安装Silverlight For Windows Phone Developer Tools 目前只有CTP版本.这个Tools包含Visual Studio 2010 Express for Windows Phone CTP版,Windows Phone Emulator CTP版,以及Silverlight for Windows Phone CTP版和XNA Game Studio CTP版. 现在VS2010已经支持Window Phone开发. 不知这个XNA为何物?

C:如果您是一位前端设计人员,想要仔细研究研究Silverlight的话,那么则可以下载Express Blend 4 Beta,然后再安装上Expression Blend Add-in for Windows Phone以及Expression Blend SDK for Windows Phone. 您就可以体验在Expression Blend里面设计Windows Phone 7的应用程序了. 很不错吧.

进入开发:

工具安装完成之后, 他会给你一个提示. 是否立即运行.Visual Studio 2010 Express for Windows Phone .你可以直接运行. 也可以不予理会 直接打开VS2010.查看开发模板.

Silverlight for Windows phone之初体验_wp7_02

发现多了两个新集合模板:Silverlight For Windows Phone 和XNA Game Studio4.0. 新建一个常用Windows Phone Application. 命名为MyFirstWindowsPhoneDemo.新建完成后出现如下界面:

Silverlight for Windows phone之初体验_休闲_03

说明一下图中标识区域:

A:Windows Phone Controls.也就是工具箱.和Silverlight 普通开发类似.

B:Windows Phone图形效果页面.

C:Silverlight XAML编码页面 B和C 正好从Silverlight 上下布局 变成左右布局. 主要是Windows Phone 是长方体. 这样布局开发上看起效果更直观.

D:解决方案树形结构.

创建完成打开工具箱 拖入一个Textbox Button.和一个WebBrowser控件. 布局如下:

Silverlight for Windows phone之初体验_Windows phone_04

XAML页面布局代码:

  1. <!--ContentGrid is empty. Place new content here-->  
  2.          <Grid x:Name="ContentGrid" Grid.Row="1">  
  3.              <browser:WebBrowser HorizontalAlignment="Left" Margin="6,84,0,0" Name="webBrowser1" VerticalAlignment="Top" Height="568" Width="468" />  
  4.              <Button Content="Button" Height="70" HorizontalAlignment="Left" Margin="314,3,0,0" Name="button1" VerticalAlignment="Top" Width="160" Click="button1_Click" />  
  5.              <TextBox Height="32" HorizontalAlignment="Left" Margin="6,3,0,0" Name="textBox1" Text="TextBox" VerticalAlignment="Top" Width="317" />  
  6.          </Grid>  

我现在实现一个简单效果. 在Textbox中输入网址.点击Button按钮把网页实现跳转并把内容显示WebBroswer中.Button按钮Click事件:

  1. private void button1_Click(object sender, RoutedEventArgs e)  
  2.          {  
  3.              string geturi = "Http://" + this.textBox1.Text;  
  4.              this.webBrowser1.Navigate(new Uri(geturi,UriKind.RelativeOrAbsolute));  
  5.              MessageBox.Show("跳转成功""提示!", MessageBoxButton.OK);  
  6.          }  

ok.如上即实现一个简单网页跳转效果.来运行界面.先有一个Loding加载页面 加载完成后看看.

Silverlight for Windows phone之初体验_wp7_05

ok.运行界面如上.我们一般做Silverlight开发时承载都是WebForm窗体上.对于Winform上承载Silverlight还是少见. 输入一个博客园http://www.51cto.com/.效果.,

Silverlight for Windows phone之初体验_体验_06

在WebBroswer控件成功显示. 但在顶部提示信息MessageBox中中文编程乱码.当前CTP版本对中文支持还不带好. 只能等待正式版本改善.目前建议使用英文开发.使用Windows phone的新界面. 左边箭头是Back返回上一页. Windows标志则是回到主页面. 最右边则是到达Search搜索页面.主页面只有一个IE图标.

Silverlight for Windows phone之初体验_体验_07

而Mix10大会看到演示程序有两排图标. 这个主要原因是对于开发上暂时提供开发上模板. 目前只是CTP版本.正式版中会有所改善.Windows phone中也集成Bing运用.通过点击最右边Search按钮就能看到.体验一下:

Silverlight for Windows phone之初体验_休闲_08

Windows Phone 7基于Silverlight开发还是不错的,Windows Phone 7不是 Windows Mobile的升级,而是一个全新的操作手机操作系统.当然集成了Silverlight开发 虽然目前只是发布CTP版本. 但是足以令人期待.

以下为参考资源:

Mix 10 silverlight For Windows phone [参考]

Developer Windows Phone  [提供开发工具下载.部分参考实例和文档. 另外还有很多Developer Blog集合]

MSDN-Windows Phone Development [MSDN上资源环境配置. 以及简单开发流程讲解 比较详细. 全英 建议参考.]