Silverlight for Windows Phone 差点闹了一个笑话. 很多开发者看到诺基亚Symbian上的Silverlight都出来,那么急于Windows的silverlight 怎么没有反应. 当然微软在移动通信领域也是不甘示弱.虽然Windows Mobile智能操作系统的市场正在被iPhone和Android吞食. 看着自己不争气的Windows Mobile,于是乎在MWC 2010大会发布了Windows Phone 7智能操作系统.
<a href="http://blog.51cto.com/attachment/201201/180106339.png" target="_blank"></a>
当然作为开发人员还是尽快想体验一下关于Silverlight For Windows phone特点.
开发前准备:
A:操作系统要求Windows7或Vista SP2. 对于使用XP系统Developer 很遗憾. 随便说一下官方对硬件要求:硬盘3G,内存 2G,最关键必须还需要一块支持DirectX 10的显卡.
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.查看开发模板.
<a href="http://blog.51cto.com/attachment/201201/180111765.png" target="_blank"></a>
发现多了两个新集合模板:Silverlight For Windows Phone 和XNA Game Studio4.0. 新建一个常用Windows Phone Application. 命名为MyFirstWindowsPhoneDemo.新建完成后出现如下界面:
<a href="http://blog.51cto.com/attachment/201201/180116446.png" target="_blank"></a>
说明一下图中标识区域:
A:Windows Phone Controls.也就是工具箱.和Silverlight 普通开发类似.
B:Windows Phone图形效果页面.
C:Silverlight XAML编码页面 B和C 正好从Silverlight 上下布局 变成左右布局. 主要是Windows Phone 是长方体. 这样布局开发上看起效果更直观.
D:解决方案树形结构.
创建完成打开工具箱 拖入一个Textbox Button.和一个WebBrowser控件. 布局如下:
<a href="http://blog.51cto.com/attachment/201201/180121645.png" target="_blank"></a>
XAML页面布局代码:
<!--ContentGrid is empty. Place new content here-->
<Grid x:Name="ContentGrid" Grid.Row="1">
<browser:WebBrowser HorizontalAlignment="Left" Margin="6,84,0,0" Name="webBrowser1" VerticalAlignment="Top" Height="568" Width="468" />
<Button Content="Button" Height="70" HorizontalAlignment="Left" Margin="314,3,0,0" Name="button1" VerticalAlignment="Top" Width="160" Click="button1_Click" />
<TextBox Height="32" HorizontalAlignment="Left" Margin="6,3,0,0" Name="textBox1" Text="TextBox" VerticalAlignment="Top" Width="317" />
</Grid>
我现在实现一个简单效果. 在Textbox中输入网址.点击Button按钮把网页实现跳转并把内容显示WebBroswer中.Button按钮Click事件:
private void button1_Click(object sender, RoutedEventArgs e)
{
string geturi = "Http://" + this.textBox1.Text;
this.webBrowser1.Navigate(new Uri(geturi,UriKind.RelativeOrAbsolute));
MessageBox.Show("跳转成功", "提示!", MessageBoxButton.OK);
}
ok.如上即实现一个简单网页跳转效果.来运行界面.先有一个Loding加载页面 加载完成后看看.
<a href="http://blog.51cto.com/attachment/201201/180127945.png" target="_blank"></a>
<a href="http://blog.51cto.com/attachment/201201/180132757.png" target="_blank"></a>
在WebBroswer控件成功显示. 但在顶部提示信息MessageBox中中文编程乱码.当前CTP版本对中文支持还不带好. 只能等待正式版本改善.目前建议使用英文开发.使用Windows phone的新界面. 左边箭头是Back返回上一页. Windows标志则是回到主页面. 最右边则是到达Search搜索页面.主页面只有一个IE图标.
<a href="http://blog.51cto.com/attachment/201201/180137883.png" target="_blank"></a>
而Mix10大会看到演示程序有两排图标. 这个主要原因是对于开发上暂时提供开发上模板. 目前只是CTP版本.正式版中会有所改善.Windows phone中也集成Bing运用.通过点击最右边Search按钮就能看到.体验一下:
<a href="http://blog.51cto.com/attachment/201201/180143836.jpg" target="_blank"></a>
Windows Phone 7基于Silverlight开发还是不错的,Windows Phone 7不是 Windows Mobile的升级,而是一个全新的操作手机操作系统.当然集成了Silverlight开发 虽然目前只是发布CTP版本. 但是足以令人期待.
以下为参考资源:
本文转自chenkaiunion 51CTO博客,原文链接:http://blog.51cto.com/chenkai/764901