Windows Phone 7 Tips (4)

简介:

1.Windows Phone 7 中常见的使用WebClient代码段

    WebClient twitter = new WebClient();
 

    twitter.DownloadStringCompleted  +=  new  DownloadStringCompletedEventHandler(twitter_DownloadStringCompleted);
    twitter.DownloadStringAsync(
new  Uri( " http://api.twitter.com/1/statuses/user_timeline.xml?screen_name= "  +  TwitterNameBox.Text));

2. 在Windows Phone 7 程序Deactivated的时候,我们需要处理程序的持久化数据和瞬态数据。

 A。将持久化数据保存到IsolatedStroage

 B。在App.xaml.cs的Deactivated事件中处理应用程序瞬态数据,将应用程序瞬态数据保存至PhoneApplicationService.State中
 

 C。在页面的OnNavigatedFrom事件中处理页面瞬态数据,将页面瞬态数据保存至PhoneApplicationPage.State中 
 

3. 对于通过WebClient获取到的XML数据源 ,我们可以使用Linq To XML 方便操作,获取其属性以便绑定
 

 XElement xmlTweets = XElement.Parse(e.Result);

 
TwitterList.ItemsSource  =  from tweet  in  xmlTweets.Descendants( " status " ) select  new  TwitterItem{message  =  tweet.Element( " text " ).Value};

4.在使用linq to xml需要注意返回的xml数据有没有含命名空间
 

这个是从tweet search wp7 项目中截取的部分返回xml数据,注意是返回xml数据中包含命名空间

则使用linq to xml 处理数据时也需要加上命名空间,tweet search wp7 项目处理代码如下 
 

如果返回的数据不包含命名空间,如下图 
 

5. 在Visual Studio 默认并没有NavigateToEventHandler的快捷键,我们可以自行定义

选择菜单栏--> 工具---> 选项,找到 键盘节点,在搜索框中输入NavigateToEventHandler,会找到EditorContextMenus.XAMLEditor.NavigateToEventHandler,然后按快捷键Ctrl+G+T(当然你可以自行定义),点击Assign

这样我们就可以使用快捷键Ctrl+G+T了,就不需要右击选择转到事件处理,其实我们可以看到快捷键已经添加到右击选项中了

6. Windows Phone 7 中应用程序设计需要遵循的Three Red Threads: Personal、Relevant、Connected

7. 在Windows Phone7中取得屏幕截图(转自http://mxmxm.com)

分享一个取得屏幕截图的代码,但是由于程序不能在后台运行,所以只能通过按钮或者菜单取得截图,然后把图片保存在相册中。

 
  1. public void CaptureScreen(object sender, EventArgs e)  
  2. {  
  3. WriteableBitmap bmp = new WriteableBitmap(480, 800);  
  4. bmp.Render(App.Current.RootVisual, null);  
  5. bmp.Invalidate();  
  6.  
  7. MemoryStream stream = new MemoryStream();  
  8. bmp.SaveJpeg(stream, bmp.PixelWidth, bmp.PixelHeight, 0, 80);  
  9. stream.Seek(0, SeekOrigin.Begin);  
  10.  
  11. MediaLibrary library = new MediaLibrary();  
  12. string filename = "ScreenShot_" + DateTime.Now.ToString("yyyy-MM-dd_hh:mm:ss");  
  13. library.SavePicture(filename, stream);  
  14. stream.Close();  

8. 让我们的phone 7 震动

 
  1. VibrateController vib = VibrateController.Default;  
  2. vib.Start(TimeSpan.FromMilliseconds(100));  

9.  WPF的资源的资源包括静态资源(StaticResource)和动态资源(DynamicResource),他们之间的区别是:

静态资源在第一次编译后即确定其对象或值,之后不能对其进行修改。动态资源则是在运行时决定,当运行过程中真正需要时,才到资源目标中查找其值。

10. 在windows phone 7中我们只需关注静态资源(StaticResource)
 



    本文转自xshf12345 51CTO博客,原文链接:http://blog.51cto.com/alexis/575325,如需转载请自行联系原作者



相关文章
|
11月前
|
缓存 Shell C#
后渗透之windows中远程下载文件tips
后渗透之windows中远程下载文件tips
|
Android开发 iOS开发 Windows
Windows Phone 寿终正寝了,这些经典机型你还记得吗?
不久前,随着最后一家WP手机厂商惠普宣布取消今后Windows Phone的研发计划,以及微软官方声明对WP8.1系统今后所有升级维护的终止,WP手机,作为曾经和安卓手机、苹果手机并驾齐驱的三大智能手机之一,正式寿终正寝。
1249 0
Windows Phone 寿终正寝了,这些经典机型你还记得吗?
|
XML 开发框架 前端开发
Windows Phone快速入门需掌握哪些能力
在此之前,先普及下Windows Phone的概念和开发工具的介绍。 Windows Phone是微软公司开发的手机操作系统,它将微软旗下的Xbox Live游戏、Xbox Music音乐与独特的视频体验集成至手机中。2012年6月21日,微软正式发布Windows Phone 8,采用和Windows 8相同的Windows NT内核,同时也针对市场的Windows Phone 7.5发布Windows Phone 7.8。
133 0
Windows Phone快速入门需掌握哪些能力
|
编解码 前端开发 JavaScript
Windows Phone 下开发 LBS 应用
基于位置的服务(Location Based Service,LBS),它是通过电信移动运营商的无线电通讯网络(如GSM网、CDMA网)或外部定位方式(如GPS)获取移动终端用户的位置信息(地理坐标,或大地坐标),在GIS(Geographic Information System,地理信息系统)平台的支持下,为用户提供相应服务的一种增值业务。
162 0
|
移动开发 Android开发 开发者
Windows Phone 8.1 新功能汇总 开发者预览版开放下载
在Build 2014大会上,微软正式发布了传闻已久的Windows Phone 8.1系统,所有的Windows Phone 8手机都可以升级,微软这次可谓是十分厚道。虽然并非迭代升级,但WP 8.1还是拥有很多重大更新,对于微软进一步完善移动平台拥有积极的意义。下面,就一起来了解一下WP 8.1的主要新特性。
230 0
Windows Phone 8.1 新功能汇总 开发者预览版开放下载
|
Windows 网络协议 数据安全/隐私保护