與眾不同 windows phone (5) - Chooser(選擇器) 原文:與眾不同 windows phone (5) - Chooser(選擇器)
[索引頁] [源碼下載]
與眾不同 windows phone (5) - Chooser(選擇器)
作者:webabcd 介紹 與眾不同 windows phone 7.5 (sdk 7.1) 之選擇器
AddressChooserTask - 選擇聯(lián)系人的地址 EmailAddressChooserTask - 選擇聯(lián)系人的email PhoneNumberChooserTask - 選擇聯(lián)系人的電話 SaveContactTask - 保存聯(lián)系方式 SaveEmailAddressTask - 保存電子郵件地址 SavePhoneNumberTask - 保存電話號碼 SaveRingtoneTask - 保存鈴聲 PhotoChooserTask - 從圖庫里選擇照片 CameraCaptureTask - 相機拍照 GameInviteTask - 游戲邀請(邀請其他人加入我的游戲會話) 示例 1、AddressChooserTask 的 Demo AddressChooserTask.xaml.cs
/* * AddressChooserTask - 選擇聯(lián)系人的地址* Completed - 選中地址之后所執(zhí)行的事件* Show() - 顯示聯(lián)系人列表* * TaskResult - 用戶選擇后的結(jié)果* OK - 成功* Cancel - 取消* None - 失敗* * AddressResult - Completed 事件的事件參數(shù)* DisplayName - 聯(lián)系人名稱* Address - 聯(lián)系人的地址 */ using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using Microsoft.Phone.Controls; using Microsoft.Phone.Tasks; namespace Demo.Choosers
{ public partial class AddressChooserTaskDemo : PhoneApplicationPage{ private AddressChooserTask _addressChooserTask; public AddressChooserTaskDemo(){InitializeComponent();} private void btnDemo_Click(
object sender, RoutedEventArgs e){_addressChooserTask =
new AddressChooserTask();_addressChooserTask.Completed +=
new EventHandler<AddressResult>
(_addressChooserTask_Completed); try {_addressChooserTask.Show();} catch (Exception ex){MessageBox.Show(ex.ToString());}} void _addressChooserTask_Completed(
object sender, AddressResult e){ if (e.TaskResult ==
TaskResult.OK){MessageBox.Show( " “ " + e.DisplayName +
" ”的地址是: " +
e.Address);}}}
} ?
2、EmailAddressChooserTask?的 Demo EmailAddressChooserTask.xaml.cs
/* * EmailAddressChooserTask - 選擇聯(lián)系人的email* Completed - 選中email之后所執(zhí)行的事件* Show() - 顯示聯(lián)系人列表* * TaskResult - 用戶選擇后的結(jié)果* OK - 成功* Cancel - 取消* None - 失敗* * EmailResult - Completed 事件的事件參數(shù)* DisplayName - 聯(lián)系人名稱* Email - 聯(lián)系人的email */ using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using Microsoft.Phone.Controls; using Microsoft.Phone.Tasks; namespace Demo.Choosers
{ public partial class EmailAddressChooserTaskDemo : PhoneApplicationPage{ private EmailAddressChooserTask _emailAddressChooserTask; public EmailAddressChooserTaskDemo(){InitializeComponent();} private void btnDemo_Click(
object sender, RoutedEventArgs e){_emailAddressChooserTask =
new EmailAddressChooserTask();_emailAddressChooserTask.Completed +=
new EventHandler<EmailResult>
(_emailAddressChooserTask_Completed); try {_emailAddressChooserTask.Show();} catch (Exception ex){MessageBox.Show(ex.ToString());}} void _emailAddressChooserTask_Completed(
object sender, EmailResult e){ if (e.TaskResult ==
TaskResult.OK){MessageBox.Show( " “ " + e.DisplayName +
" ”的email是: " +
e.Email);}}}
} ?
3、PhoneNumberChooserTask 的 Demo PhoneNumberChooserTask.xaml.cs
/* * PhoneNumberChooserTask - 選擇聯(lián)系人的電話* Completed - 選中電話之后所執(zhí)行的事件* Show() - 顯示聯(lián)系人列表* * TaskResult - 用戶選擇后的結(jié)果* OK - 成功* Cancel - 取消* None - 失敗* * PhoneNumberResult - Completed 事件的事件參數(shù)* DisplayName - 聯(lián)系人名稱* PhoneNumber - 聯(lián)系人的電話 */ using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using Microsoft.Phone.Controls; using Microsoft.Phone.Tasks; namespace Demo.Choosers
{ public partial class PhoneNumberChooserTaskDemo : PhoneApplicationPage{ private PhoneNumberChooserTask _phoneNumberChooserTask; public PhoneNumberChooserTaskDemo(){InitializeComponent();} private void btnDemo_Click(
object sender, RoutedEventArgs e){_phoneNumberChooserTask =
new PhoneNumberChooserTask();_phoneNumberChooserTask.Completed +=
new EventHandler<PhoneNumberResult>
(_phoneNumberChooserTask_Completed); try {_phoneNumberChooserTask.Show();} catch (Exception ex){MessageBox.Show(ex.ToString());}} void _phoneNumberChooserTask_Completed(
object sender, PhoneNumberResult e){ if (e.TaskResult ==
TaskResult.OK){MessageBox.Show( " “ " + e.DisplayName +
" ”的電話號碼是: " +
e.PhoneNumber);}}}
} ?
4、SaveContactTask 的 Demo SaveContactTask.xaml.cs
/* * SaveContactTask - 保存聯(lián)系方式* Completed - 完成保存操作(成功、取消、失敗)之后所執(zhí)行的事件* FirstName, MiddleName, LastName, Nickname, HomeAddressCity, HomeAddressCountry, HomeAddressState, HomeAddressStreet, HomeAddressZipCode, HomePhone, WorkAddressCity, WorkAddressCountry, WorkAddressState, WorkAddressStreet, WorkAddressZipCode, WorkEmail, WorkPhone, Suffix, Title, Website, JobTitle, Company, MobilePhone, PersonalEmail, OtherEmail, Notes* Show() - 顯示用于保存聯(lián)系方式的窗口* * TaskResult - 任務(wù)結(jié)果* OK - 成功* Cancel - 取消* None - 失敗 */ using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using Microsoft.Phone.Controls; using Microsoft.Phone.Tasks; namespace Demo.Choosers
{ public partial class SaveContactTaskDemo : PhoneApplicationPage{ private SaveContactTask _saveContactTask; public SaveContactTaskDemo(){InitializeComponent();} private void btnDemo_Click(
object sender, RoutedEventArgs e){_saveContactTask =
new SaveContactTask();_saveContactTask.Completed +=
new EventHandler<SaveContactResult>
(_saveContactTask_Completed); try {_saveContactTask.FirstName =
" web " ;_saveContactTask.LastName =
" abcd " ;_saveContactTask.MobilePhone =
" 11111111111 " ;_saveContactTask.Show();} catch (System.InvalidOperationException ex){MessageBox.Show(ex.ToString());}} void _saveContactTask_Completed(
object sender, SaveContactResult e){ switch (e.TaskResult){ case TaskResult.OK:MessageBox.Show( " 保存成功 " ); break ; case TaskResult.Cancel:MessageBox.Show( " 取消保存 " ); break ; case TaskResult.None:MessageBox.Show( " 無法保存 " ); break ;}}}
} ?
5、SaveEmailAddressTask 的 Demo SaveEmailAddressTask.xaml.cs
/* * SaveEmailAddressTask - 保存電子郵件地址* Completed - 完成保存操作(成功、取消、失敗)之后所執(zhí)行的事件* Email - 需要保存的電子郵件地址* Show() - 顯示用于保存電子郵件地址的窗口* * TaskResult - 任務(wù)結(jié)果* OK - 成功* Cancel - 取消* None - 失敗 */ using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using Microsoft.Phone.Controls; using Microsoft.Phone.Tasks; namespace Demo.Choosers
{ public partial class SaveEmailAddressTaskDemo : PhoneApplicationPage{ private SaveEmailAddressTask _saveEmailAddressTask; public SaveEmailAddressTaskDemo(){InitializeComponent();} private void btnDemo_Click(
object sender, RoutedEventArgs e){_saveEmailAddressTask =
new SaveEmailAddressTask();_saveEmailAddressTask.Completed +=
new EventHandler<TaskEventArgs>
(_saveEmailAddressTask_Completed); try {_saveEmailAddressTask.Email =
" a@b.c " ;_saveEmailAddressTask.Show();} catch (System.InvalidOperationException ex){MessageBox.Show(ex.ToString());}} void _saveEmailAddressTask_Completed(
object sender, TaskEventArgs e){ switch (e.TaskResult){ case TaskResult.OK:MessageBox.Show( " 保存成功 " ); break ; case TaskResult.Cancel:MessageBox.Show( " 取消保存 " ); break ; case TaskResult.None:MessageBox.Show( " 無法保存 " ); break ;}}}
} ?
6、SavePhoneNumberTask 的 Demo SavePhoneNumberTask.xaml.cs
/* * SavePhoneNumberTask - 保存電話號碼* Completed - 完成保存操作(成功、取消、失敗)之后所執(zhí)行的事件* PhoneNumber - 需要保存的電話號碼* Show() - 顯示用于保存電話號碼的窗口* * TaskResult - 任務(wù)結(jié)果* OK - 成功* Cancel - 取消* None - 失敗 */ using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using Microsoft.Phone.Controls; using Microsoft.Phone.Tasks; namespace Demo.Choosers
{ public partial class SavePhoneNumberTaskDemo : PhoneApplicationPage{ private SavePhoneNumberTask _savePhoneNumberTask; public SavePhoneNumberTaskDemo(){InitializeComponent();} private void btnDemo_Click(
object sender, RoutedEventArgs e){_savePhoneNumberTask =
new SavePhoneNumberTask();_savePhoneNumberTask.Completed +=
new EventHandler<TaskEventArgs>
(_savePhoneNumberTask_Completed); try {_savePhoneNumberTask.PhoneNumber =
" 11111111111 " ;_savePhoneNumberTask.Show();} catch (System.InvalidOperationException ex){MessageBox.Show(ex.ToString());}} void _savePhoneNumberTask_Completed(
object sender, TaskEventArgs e){ switch (e.TaskResult){ case TaskResult.OK:MessageBox.Show( " 保存成功 " ); break ; case TaskResult.Cancel:MessageBox.Show( " 取消保存 " ); break ; case TaskResult.None:MessageBox.Show( " 無法保存 " ); break ;}}}
} ?
7、SaveRingtoneTask 的 Demo SaveRingtoneTask.xaml.cs
/* * SaveRingtoneTask - 保存鈴聲* Completed - 保存鈴聲之后所執(zhí)行的事件* Source - 鈴聲文件的地址* IsShareable - 指示該鈴聲是否可被其他應(yīng)用程序訪問* DisplayName - 鈴聲的名稱(顯示用)* Show() - 顯示保存鈴聲窗口* * TaskResult - 任務(wù)結(jié)果* OK - 成功* Cancel - 取消* None - 失敗 */ using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using Microsoft.Phone.Controls; using Microsoft.Phone.Tasks; namespace Demo.Choosers
{ public partial class SaveRingtoneTaskDemo : PhoneApplicationPage{ private SaveRingtoneTask _saveRingtoneChooser; public SaveRingtoneTaskDemo(){InitializeComponent();} private void btnDemo_Click(
object sender, RoutedEventArgs e){_saveRingtoneChooser =
new SaveRingtoneTask();_saveRingtoneChooser.Completed +=
new EventHandler<TaskEventArgs>
(_saveRingtoneChooser_Completed); try {_saveRingtoneChooser.Source =
new Uri(
" appdata:/Assets/SuperMario.mp3 " );
// appdata: 代表程序包內(nèi) // saveRingtoneChooser.Source = new Uri("isostore:/myTone.mp3"); // isostore: 代表獨立存儲 // _saveRingtoneChooser.Source = new Uri(" http://a.b.c/d.mp3 "); // 網(wǎng)絡(luò)地址 _saveRingtoneChooser.IsShareable =
true ;_saveRingtoneChooser.DisplayName =
" 超級馬里奧鈴聲 " ;_saveRingtoneChooser.Show();} catch (System.InvalidOperationException ex){MessageBox.Show(ex.ToString());}} void _saveRingtoneChooser_Completed(
object sender, TaskEventArgs e){ switch (e.TaskResult){ case TaskResult.OK:MessageBox.Show( " 保存成功 " ); break ; case TaskResult.Cancel:MessageBox.Show( " 取消保存 " ); break ; case TaskResult.None:MessageBox.Show( " 無法保存 " ); break ;}}}
} ?
8、PhotoChooserTask 的 Demo PhotoChooserTask.xaml.cs
/* * PhotoChooserTask - 從圖庫里選擇照片* Completed - 選中照片之后所執(zhí)行的事件* Show() - 顯示圖庫* * TaskResult - 任務(wù)結(jié)果* OK - 成功* Cancel - 取消* None - 失敗* * PhotoResult - Completed 事件的事件參數(shù)* ChosenPhoto - 照片數(shù)據(jù)(System.IO.Stream 類型)* OriginalFileName - 照片的文件名 */ using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using Microsoft.Phone.Controls; using Microsoft.Phone.Tasks; namespace Demo.Choosers
{ public partial class PhotoChooserTaskDemo : PhoneApplicationPage{ private PhotoChooserTask _photoChooserTask; public PhotoChooserTaskDemo(){InitializeComponent();} private void btnDemo_Click(
object sender, RoutedEventArgs e){_photoChooserTask =
new PhotoChooserTask();_photoChooserTask.Completed +=
new EventHandler<PhotoResult>
(_photoChooserTask_Completed); try {_photoChooserTask.Show();} catch (Exception ex){MessageBox.Show(ex.ToString());}} void _photoChooserTask_Completed(
object sender, PhotoResult e){ if (e.TaskResult ==
TaskResult.OK){System.Windows.Media.Imaging.BitmapImage bmp =
new System.Windows.Media.Imaging.BitmapImage();bmp.SetSource(e.ChosenPhoto);img.Source =
bmp;}}}
} ?
9、CameraCaptureTask 的 Demo CameraCaptureTask.xaml.cs
/* * CameraCaptureTask - 相機拍照* Completed - 拍照并確認之后所執(zhí)行的事件* Show() - 啟動相機* * TaskResult - 任務(wù)結(jié)果* OK - 成功* Cancel - 取消* None - 失敗* * PhotoResult - Completed 事件的事件參數(shù)* ChosenPhoto - 照片數(shù)據(jù)(System.IO.Stream 類型)* OriginalFileName - 照片的文件名 */ using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using Microsoft.Phone.Controls; using Microsoft.Phone.Tasks; namespace Demo.Choosers
{ public partial class CameraCaptureTaskDemo : PhoneApplicationPage{ private CameraCaptureTask _cameraCaptureTask; public CameraCaptureTaskDemo(){InitializeComponent();} private void btnDemo_Click(
object sender, RoutedEventArgs e){_cameraCaptureTask =
new CameraCaptureTask();_cameraCaptureTask.Completed +=
new EventHandler<PhotoResult>
(_cameraCaptureTask_Completed); try {_cameraCaptureTask.Show();} catch (System.InvalidOperationException ex){MessageBox.Show(ex.ToString());}} void _cameraCaptureTask_Completed(
object sender, PhotoResult e){ if (e.TaskResult ==
TaskResult.OK){System.Windows.Media.Imaging.BitmapImage bmp =
new System.Windows.Media.Imaging.BitmapImage();bmp.SetSource(e.ChosenPhoto);img.Source =
bmp;}}}
} ?
10、GameInviteTask 的 Demo GameInviteTask.xaml.cs
/* * GameInviteTask - 游戲邀請(邀請其他人加入我的游戲會話)* Completed - 完成操作之后所執(zhí)行的事件* SessionId - 游戲的會話 ID* Show() - 發(fā)出邀請* * TaskResult - 用戶選擇后的結(jié)果* OK - 成功* Cancel - 取消* None - 失敗 */ using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using Microsoft.Phone.Controls; using Microsoft.Phone.Tasks; namespace Demo.Choosers
{ public partial class GameInviteTaskDemo : PhoneApplicationPage{ private GameInviteTask _gameInviteTask; public GameInviteTaskDemo(){InitializeComponent();} private void btnDemo_Click(
object sender, RoutedEventArgs e){_gameInviteTask =
new GameInviteTask();_gameInviteTask.Completed +=
new EventHandler<TaskEventArgs>
(_gameInviteTask_Completed); try { // 游戲需要在 Windows Phone 上的 Xbox LIVE 中發(fā)布,并且邀請人也要是 Xbox LIVE 的會員 _gameInviteTask.SessionId =
" 游戲的 session id " ;_gameInviteTask.Show();} catch (System.InvalidOperationException ex){MessageBox.Show(ex.ToString());}} void _gameInviteTask_Completed(
object sender, TaskEventArgs e){ switch (e.TaskResult){ case TaskResult.OK:MessageBox.Show( " 游戲邀請已發(fā)送 " ); break ; case TaskResult.Cancel:MessageBox.Show( " 游戲邀請已取消 " ); break ; case TaskResult.None:MessageBox.Show( " 游戲邀請無法發(fā)送 " ); break ;}}}
} OK [源碼下載]
posted on
2014-02-22 19:05 NET未來之路 閱讀(
... ) 評論() 編輯 收藏
轉(zhuǎn)載于:https://www.cnblogs.com/lonelyxmas/p/3561136.html
總結(jié)
以上是生活随笔 為你收集整理的与众不同 windows phone (5) - Chooser(选择器) 的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔 網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔 推薦給好友。