1. using Microsoft.Phone.Controls;
  2. using Microsoft.Phone.Tasks;
  3. using System;
  4. using System.Windows;
  5.  
  6. namespace PhoneAppChooser
  7. {
  8. public partial class MainPage : PhoneApplicationPage
  9. {
  10. public MainPage()
  11. {
  12. InitializeComponent();
  13. }
  14. /*
  15. * 如何使用 Windows Phone 地址选择器任务
  16. * http://msdn.microsoft.com/zh-CN/library/hh394029(v=vs.92)
  17. * 使用地址选择器任务可获取用户选择的联系人的物理地址。此任务启动“联系人”应用程序,以便用户能够选择联系人。
  18. * 如果用户完成此任务,将会引发一个事件,并且事件处理程序将会在结果中收到一个地址。
  19. */
  20. private void Button_Click_1(object sender, RoutedEventArgs e)
  21. {
  22. AddressChooserTask addressChooserTask = new AddressChooserTask();
  23. addressChooserTask.Completed += (obj, addressResult) =>
  24. {
  25. if (addressResult.TaskResult == TaskResult.OK)
  26. {
  27. MessageBox.Show("the address for " + addressResult.DisplayName + " is " + addressResult.Address);
  28. }
  29. };
  30. addressChooserTask.Show();
  31. }
  32. /*
  33. * 如何使用 Windows Phone 相机拍摄任务
  34. * http://msdn.microsoft.com/zh-CN/library/hh394006(v=vs.92)
  35. * 通过相机拍摄任务,用户能够从您的应用程序中使用内置“相机”应用程序拍摄照片。
  36. * 如果用户完成此任务,将会引发一个事件,并且事件处理程序将会在结果中收到一张照片。
  37. */
  38. private void Button_Click_2(object sender, RoutedEventArgs e)
  39. {
  40. CameraCaptureTask cameraCaptureTask = new CameraCaptureTask();
  41. cameraCaptureTask.Completed += (obj, photoResult) =>
  42. {
  43. if (photoResult.TaskResult == TaskResult.OK)
  44. {
  45. MessageBox.Show(photoResult.ChosenPhoto.Length.ToString());
  46. }
  47. };
  48. cameraCaptureTask.Show();
  49. }
  50. /*
  51. * 如何使用 Windows Phone 电子邮件地址选择器任务
  52. * http://msdn.microsoft.com/zh-CN/library/hh394016(v=vs.92)
  53. * 使用电子邮件地址选择器任务可获取用户选择的联系人的电子邮件地址。此任务启动“联系人”应用程序,
  54. * 以便用户能够选择联系人。如果用户完成此任务,将会引发一个事件,并且事件处理程序将会在结果中收到一个地址。
  55. */
  56. private void Button_Click_3(object sender, RoutedEventArgs e)
  57. {
  58. EmailAddressChooserTask emailAddressChooserTask = new EmailAddressChooserTask();
  59. emailAddressChooserTask.Completed += (obj, emailResult) =>
  60. {
  61. if (emailResult.TaskResult == TaskResult.OK)
  62. {
  63. MessageBox.Show("DisplayName: " + emailResult.DisplayName + " Email: " + emailResult.Email);
  64. }
  65. };
  66. emailAddressChooserTask.Show();
  67. }
  68. /*
  69. * 如何使用 Windows Phone 游戏邀请任务
  70. * http://msdn.microsoft.com/zh-CN/library/hh394002(v=vs.92)
  71. * 使用游戏邀请任务可以显示游戏邀请屏幕,该屏幕允许用户邀请多个玩家加入一个多人游戏会话。邀请是异步发送的。
  72. *
  73. *
  74. */
  75. private void Button_Click_4(object sender, RoutedEventArgs e)
  76. {
  77. GameInviteTask gameInviteTask = new GameInviteTask();
  78. gameInviteTask.Completed += (obj, taskEventArgs) =>
  79. {
  80. switch (taskEventArgs.TaskResult)
  81. {
  82. case TaskResult.Cancel:
  83. MessageBox.Show("Game invitation sent.");
  84. break;
  85. case TaskResult.None:
  86. MessageBox.Show("Game invitation couldn't be sent.");
  87. break;
  88. case TaskResult.OK:
  89. MessageBox.Show("Game invitation cancelled.");
  90. break;
  91. default:
  92. break;
  93. }
  94. };
  95. gameInviteTask.SessionId = "game session id 不知道这个sessionid该怎么填";
  96. gameInviteTask.Show();
  97. }
  98. /*
  99. * 如何使用 Windows Phone 电话号码选择器任务
  100. * http://msdn.microsoft.com/zh-CN/library/hh394021(v=vs.92)
  101. * 使用电话号码选择器任务可获取用户选择的联系人的电话号码。此任务启动“联系人”应用程序,以便用户能够选择联系人。
  102. * 如果用户完成此任务,将会引发一个事件,并且事件处理程序将会在结果中收到一个电话号码。
  103. */
  104. private void Button_Click_5(object sender, RoutedEventArgs e)
  105. {
  106. PhoneNumberChooserTask phoneNumberChooserTask = new PhoneNumberChooserTask();
  107. phoneNumberChooserTask.Completed += (obj, phoneNumberResult) =>
  108. {
  109. if (phoneNumberResult.TaskResult == TaskResult.OK)
  110. {
  111. MessageBox.Show("the phone number for " + phoneNumberResult.DisplayName + " is " + phoneNumberResult.PhoneNumber);
  112. }
  113. };
  114. phoneNumberChooserTask.Show();
  115. }
  116. /*
  117. * 如何使用 Windows Phone 照片选择器任务
  118. * http://msdn.microsoft.com/zh-CN/library/hh394019(v=vs.92)
  119. * 使用照片选择器任务使用户能够从电话中选择现有照片。此任务可以启动照片选择器应用程序。
  120. * 如果用户完成此任务,将会引发一个事件,并且事件处理程序将会在结果中收到一张照片。
  121. */
  122. private void Button_Click_6(object sender, RoutedEventArgs e)
  123. {
  124. PhotoChooserTask photoChooserTask = new PhotoChooserTask();
  125. photoChooserTask.ShowCamera = true;//默认不显示
  126. photoChooserTask.Completed += (obj, photoResult) =>
  127. {
  128. if (photoResult.TaskResult == TaskResult.OK)
  129. {
  130. MessageBox.Show(photoResult.ChosenPhoto.Length.ToString());
  131. }
  132. };
  133. photoChooserTask.Show();
  134. }
  135. /*
  136. * 如何使用 Windows Phone 保存联系人任务
  137. * http://msdn.microsoft.com/zh-CN/library/hh394013(v=vs.92)
  138. * 使用保存联系人任务可使用户能够通过您的应用程序保存联系人。此任务启动“联系人”应用程序。
  139. */
  140. private void Button_Click_7(object sender, RoutedEventArgs e)
  141. {
  142. SaveContactTask saveContactTask = new SaveContactTask();
  143. saveContactTask.Completed += (obj, saveContactResult) =>
  144. {
  145. switch (saveContactResult.TaskResult)
  146. {
  147. case TaskResult.Cancel:
  148. MessageBox.Show("save cancelled.");
  149. break;
  150. case TaskResult.None:
  151. MessageBox.Show("save couldn't be saved");
  152. break;
  153. case TaskResult.OK:
  154. MessageBox.Show("Contact save ok");
  155. break;
  156. default:
  157. break;
  158. }
  159. };
  160. saveContactTask.FirstName = "G";
  161. saveContactTask.MiddleName = " ";
  162. saveContactTask.LastName = "RJ";
  163. saveContactTask.MobilePhone = "";
  164. saveContactTask.Notes = "备注";
  165. saveContactTask.Company = "公司";
  166. saveContactTask.JobTitle = "职称";
  167. saveContactTask.Nickname = "昵称";
  168. saveContactTask.Suffix = "联系人后缀名";
  169. saveContactTask.Title = "联系人别称";
  170. saveContactTask.Website = "个人网站";
  171. saveContactTask.HomeAddressCountry = "家庭所在国家";
  172. saveContactTask.HomeAddressState = "家庭所在省";
  173. saveContactTask.HomeAddressCity = "家庭所在城市";
  174. saveContactTask.HomeAddressStreet = "家庭所在街道名称和号码";
  175. saveContactTask.HomeAddressZipCode = "家庭所在邮政编码";
  176. saveContactTask.HomePhone = "家庭电话号码";
  177. saveContactTask.PersonalEmail = "个人电子邮箱";
  178. saveContactTask.OtherEmail = "其它电子邮箱";
  179. saveContactTask.WorkAddressCountry = "工作所在国家";
  180. saveContactTask.WorkAddressState = "工作所在省";
  181. saveContactTask.WorkAddressCity = "工作所在城市";
  182. saveContactTask.WorkAddressStreet = "工作所在接到和号码";
  183. saveContactTask.WorkAddressZipCode = "工作所在邮政编码";
  184. saveContactTask.WorkEmail = "工作邮箱";
  185. saveContactTask.WorkPhone = "工作电话";
  186. saveContactTask.Show();
  187. }
  188. /*
  189. * 如何使用 Windows Phone 保存电子邮件地址任务
  190. * http://msdn.microsoft.com/zh-CN/library/hh394023(v=vs.92)
  191. * 使用保存电子邮件地址任务可使用户能够通过您的应用程序保存电子邮件地址。
  192. * 此任务启动“联系人”应用程序。
  193. */
  194. private void Button_Click_8(object sender, RoutedEventArgs e)
  195. {
  196. SaveEmailAddressTask saveEmailAddressTask = new SaveEmailAddressTask();
  197. saveEmailAddressTask.Completed += (obj, taskEventArgs) =>
  198. {
  199. switch (taskEventArgs.TaskResult)
  200. {
  201. case TaskResult.Cancel:
  202. MessageBox.Show("Save cancelled.");
  203. break;
  204. case TaskResult.None:
  205. MessageBox.Show("Email could not be saved.");
  206. break;
  207. case TaskResult.OK:
  208. MessageBox.Show("Email saved.");
  209. break;
  210. default:
  211. break;
  212. }
  213. };
  214. saveEmailAddressTask.Email = "guorenjun1046@126.com";
  215. saveEmailAddressTask.Show();
  216. }
  217. /*
  218. * 如何使用 Windows Phone 保存电话号码任务
  219. * http://msdn.microsoft.com/zh-CN/library/hh394028(v=vs.92)
  220. * 使用保存电话号码任务可使用户能够通过您的应用程序保存电话号码。此任务启动“联系人”应用程序。
  221. */
  222. private void Button_Click_9(object sender, RoutedEventArgs e)
  223. {
  224. SavePhoneNumberTask savePhoneNumberTask = new SavePhoneNumberTask();
  225. savePhoneNumberTask.Completed += (obj, taskEventArgs) =>
  226. {
  227. switch (taskEventArgs.TaskResult)
  228. {
  229. //Logic for when the number was saved successfully
  230. case TaskResult.OK:
  231. MessageBox.Show("Phone number saved.");
  232. break;
  233.  
  234. //Logic for when the task was cancelled by the user
  235. case TaskResult.Cancel:
  236. MessageBox.Show("Save cancelled.");
  237. break;
  238.  
  239. //Logic for when the number could not be saved
  240. case TaskResult.None:
  241. MessageBox.Show("Phone number could not be saved.");
  242. break;
  243. }
  244. };
  245. savePhoneNumberTask.PhoneNumber = "";
  246. savePhoneNumberTask.Show();
  247. }
  248. /*
  249. * 如何使用 Windows Phone 保存铃声任务
  250. * http://msdn.microsoft.com/zh-CN/library/hh394008(v=vs.92)
  251. * 使用保存铃声任务,用户可以将音频文件保存到系统铃声列表中。
  252. * 此任务会启动“铃声”应用程序,其中用户可以保存铃声而且可以选择将其设置为默认铃声。
  253. * 将音频文件添加到该列表后,用户就可以在“联系人”应用程序中将其设置为各个联系人的铃声。
  254. * 铃声音频文件必须满足以下要求。
  255. * 文件类型必须为 MP3 或 WMA。
  256. * 文件大小必须小于 1 MB。
  257. * 文件播放的时长必须小于 40 秒。
  258. * 文件不得具有数字版权管理 (DRM) 保护。
  259. */
  260. private void Button_Click_10(object sender, RoutedEventArgs e)
  261. {
  262. SaveRingtoneTask saveRingtoneTask = new SaveRingtoneTask();
  263. saveRingtoneTask.Completed += (obj, taskEventArgs) =>
  264. {
  265. switch (taskEventArgs.TaskResult)
  266. {
  267. //Logic for when the ringtone was saved successfully
  268. case TaskResult.OK:
  269. MessageBox.Show("Ringtone saved.");
  270. break;
  271.  
  272. //Logic for when the task was cancelled by the user
  273. case TaskResult.Cancel:
  274. MessageBox.Show("Save cancelled.");
  275. break;
  276.  
  277. //Logic for when the ringtone could not be saved
  278. case TaskResult.None:
  279. MessageBox.Show("Ringtone could not be saved.");
  280. break;
  281. }
  282. };
  283. saveRingtoneTask.Source = new Uri("appdata:/myTone.wma");
  284. saveRingtoneTask.IsShareable = true;
  285. saveRingtoneTask.DisplayName = "my custom ringtone";
  286. try
  287. {
  288. saveRingtoneTask.Show();
  289. }
  290. catch (Exception ex)
  291. {
  292. MessageBox.Show(ex.Message);
  293. }
  294. }
  295. }
  296. }

PhoneAppChooser.rar

Windows Phone 选择器的更多相关文章

  1. 使用python制作ArcGIS插件(2)代码编写

    使用python制作ArcGIS插件(2)代码编写 by 李远祥 上一章节已经介绍了如何去搭建AddIn的界面,接下来要实现具体的功能,则到了具体的编程环节.由于使用的是python语言进行编程,则开 ...

  2. CSS兼容性详解

    前面的话 对于前端工程师来说,不想面对又不得不面对的一个问题就是兼容性.在几年之前,处理兼容性,一般地就是处理IE低版本浏览器的兼容性.而近几年,随着移动端的发展,工程师也需要注意手机兼容性了.本文将 ...

  3. 与众不同 windows phone (5) - Chooser(选择器)

    原文:与众不同 windows phone (5) - Chooser(选择器) [索引页][源码下载] 与众不同 windows phone (5) - Chooser(选择器) 作者:webabc ...

  4. windows phone 8.1开发:文件选择器FileSavePicker

    上一篇文章小梦分享了文件选择器FileOpenPicker的用法,这篇文章我们继续分享FileSavePicker的用法,FileSavePicker的用法几乎和FileOpenPicker用法一模一 ...

  5. windows phone 8.1开发:文件选择器FileOpenPicker

    原文出自:http://www.bcmeng.com/fileopenpicker/ 今天小梦给大家分享一下 windows phone 8.1中的文件选择器,和之前的windows phone8的不 ...

  6. 背水一战 Windows 10 (51) - 控件(集合类): ItemsControl - 项模板选择器, 数据分组

    [源码下载] 背水一战 Windows 10 (51) - 控件(集合类): ItemsControl - 项模板选择器, 数据分组 作者:webabcd 介绍背水一战 Windows 10 之 控件 ...

  7. windows phone 8学习 - 选择器

    1照相机 CameraCaptureTask cct=new CameraCaptureTask(); cct.Completed+=new EventHandler<PhotoResult&g ...

  8. 【WCF】操作选择器

    在开始吹牛之前,先说说.net Core的事情. 你不能把.NET Core作为全新体系来学习,因为它也是.NET.关于.NET Core,老周并不打算写什么,因为你懂了.NET,就懂了.NET Co ...

  9. 【Win10 应用开发】集成文件打开选择器

    有朋友给老周提出建议:老周,能不能在写博客时讲一下有深度的小故事?技术文章谁不会写.讲一下对人生有启发性的故事会更好. 哎呀,这要求真是越来越高了.好吧,尽量吧,如果有小故事的话,老周在就每次写博客时 ...

随机推荐

  1. UVALive - 4621 Cav 贪心 + 分析

    题目大意:有一张洞穴地图,要在这个洞穴里面存放水,要求水不能碰到洞穴顶部.如今给出每一个位置的顶部位置和地面高度.问最多能够放多少水 解题思路:根据物理定理,每一段有水的连续区间,水位高度必须相等 所 ...

  2. 主席树(可持久化线段树) 静态第k大

    可持久化数据结构介绍 可持久化数据结构是保存数据结构修改的每一个历史版本,新版本与旧版本相比,修改了某个区域,但是大多数的区域是没有改变的, 所以可以将新版本相对于旧版本未修改的区域指向旧版本的该区域 ...

  3. HotSpot关联规则算法(2)-- 挖掘连续型和离散型数据

    本篇代码可在 http://download.csdn.net/detail/fansy1990/8502323下载. 前篇<HotSpot关联规则算法(1)-- 挖掘离散型数据>分析了离 ...

  4. [TroubleShooting]&#39;trn\bak&#39; is incorrectly formed. SQL Server cannot process this media family.

     SQL Server online consultants came across an interesting scenario where one of our client was una ...

  5. 【剑指offer】两个队列实现堆栈

    转载请注明出处:http://blog.csdn.net/ns_code/article/details/25076689     题目:用两个队列模拟一个栈,即用两个队列的出队和入队操作.来实现栈的 ...

  6. HDU 4337 King Arthur&#39;s Knights 它输出一个哈密顿电路

    n积分m文章无向边 它输出一个哈密顿电路 #include <cstdio> #include <cstring> #include <iostream> usin ...

  7. 查看文章strncpy()功能更好的文章

    strncpy()功能 原型:extern char *strncpy(char *dest, char *src, int n);    使用方法:#include <string.h> ...

  8. 重新想象 Windows 8 Store Apps (7) - 控件之布局控件: Canvas, Grid, StackPanel, VirtualizingStackPanel, WrapGrid, VariableSizedWrapGrid

    原文:重新想象 Windows 8 Store Apps (7) - 控件之布局控件: Canvas, Grid, StackPanel, VirtualizingStackPanel, WrapGr ...

  9. Lua语言在Wireshark中使用(转)

    1.       检查Wireshark的版本是否支持Lua 打开Wireshark,点击“HelpàAbout Wireshark”菜单,查看弹出的对话框,如果有“with Lua 5.1”表示支持 ...

  10. Java / Android 基于Http的多线程下载的实现

    转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/26994463 有个朋友需要个多线程现在的例子,就帮忙实现了,在此分享下~ 先说下 ...