上一篇咱们介绍了如何在Windows Phone程序中使用启动器。本文,咱们来看看程序中与启动器类似的功能——选择器。html
什么是选择器?ide
选择器比启动器略复杂一些,由于它们要将数据带回到程序中,而启动器只是让用户去完成一个任务。咱们将讲解此平台上每一个可用的选择器。本文的最后,我提供了一个可下载的包含了全部描述过的选择器的代码示例。工具
对每一个选择器而言,你都要确保在代码后置的文件中包含了下面的语句。咱们须要引用Microsoft.Phone.Tasks名称空间。post
using Microsoft.Phone.Tasks;测试
下面是目前可用的选择器:spa
CameraCaptureTask – 为用户提供在程序中直接拍照的功能。调试
EmailAddressChooserTask – 在程序中容许用户从联系人里面选择一个邮件地址。htm
PhoneNumberChooserTask – 在程序中容许用户从联系人里面选择一个电话号码。blog
PhotoChooserTask – 在程序中容许用户从设备里选择一张照片。事件
使用选择器
每一个选择器都有本身的属性,但在设定以后,你须要调用Show方法向用户展现。你能够在选择器中用Show方法来实现。在众多选择器中要记住的一点是在用户作出选择后你须要建立一个事件处理程序。不然,你将没法捕获他们所选的数据。
做为例子,来看一下CameraCaptureTask:
- CameraCaptureTask cct = new CameraCaptureTask();
- cct.Completed += new EventHandler
(cct_Completed); - cct.Show();
这是我添加的事件处理程序:
- void cct_Completed(object sender, PhotoResult e)
- {
- BitmapImage bmp = new BitmapImage();
- bmp.SetSource(e.ChosenPhoto);
- p_w_picpath1.Source = bmp;
- }
你会注意到我为在用户拍照时建立了一个事件处理程序。这也是我在程序中获取并使用照片数据的方式。当你在模拟器中测试时,你会看到实际上它并不能利用摄像头。而只是建立了一幅在白色画布中有一个旋转黑块的假图片。这应该能够知足你的测试了,但我仍是建议在上传你的程序到Marketplace以前用真实设备测试一下。
我已经将每个选择器的名字连接到MSDN相应的文章中,在那儿你能够看到全部的属性。因此我就不在这儿进行这种大量的复制劳动了。明天咱们讨论在调试Windows Phone 7应用程序时一些对你有用的工具。
下载示例代码
这个例子包含了上述的全部选择器。
原做者:Jeff Blankenburg 译者:金山崟霸
中文来源:http://www.cnblogs.com/porscheyin/archive/2010/12/22/1913918.html
英文来源:http://www.jeffblankenburg.com/post/31-Days-of-Windows-Phone-7c-Day-8-Choosers.aspx