在千吃呼万唤中,终于可以获取联系人和增加联系人了!但是由于增加联系人是以Task方式来实现的,所以无法通过程序实现批量保存联系人。
一.新增了一个命名空间:Microsoft.Phone.UserData;在这个命名空间里新增了多个用于联系人的类,其中通过Contacts类可以异步获取联系人列表。
Contacts _contact = new Contacts();
_contact.SearchCompleted += new EventHandler<ContactsSearchEventArgs>(_contact_SearchCompleted);
_contact.SearchAsync(String.Empty, FilterKind.None, "Contacts Test #1");//在这里可以输入参数,过滤搜索结果
void _contact_SearchCompleted(object sender, ContactsSearchEventArgs e)
{
this.listBox1.ItemsSource = e.Results.ToList();
}
获取联系人的图片方法:
BitmapImage bi = new BitmapImage();
bi.SetSource(e.Results.First().GetPicture());
二.新增了Save Contact Task,这个task用来保存新的联系人,但是这个task中并没有给出直接选择照片或图片的方法,而是要在Task运行后,在Task中选择图片。
SaveContactTask _task = new SaveContactTask();
_task.FirstName = "Randy";
_task.LastName = "Lee";
_task.Nickname = "xiaogem";
_task.MobilePhone = "1234567890";
_task.Completed += new EventHandler<SaveContactResult>(_task_Completed);//通过这个事件来判断是否保存成功。
_task.Show();