就是模仿手机本地通讯录页面,有API可以用吗?
------解决方案--------------------
不知道 LZ 是否是想要这个?
/*
* 演示如何获取设备中的联系人数据
*
* Contacts - 用于获取联系人数据的类
* Accounts - 联系人数据可能来自用户的不同帐户,Accounts 就是用来获取这个不同账户的,即数据源集合(只读属性,返回 Account 对象的集合)
* SearchAsync(string filter, FilterKind filterKind, object state) - 开始异步搜索联系人数据
* string filter - 筛选关键字
* 当 filterKind 设置为 DisplayName, EmailAddress, PhoneNumber 时指定筛选关键字
* 当 filterKind 设置为 None, PinnedToStart 时此值无用,直接写 String.Empty 就好
* FilterKind filterKind - 筛选器的类别(Microsoft.Phone.UserData.FilterKind 枚举)
* FilterKind.None - 返回全部联系人数据
* FilterKind.PinnedToStart - 返回已固定到开始屏幕的联系人数据
* FilterKind.DisplayName - 按名称搜索
* FilterKind.EmailAddress - 按 email 地址搜索
* FilterKind.PhoneNumber - 按电话号码搜索
* object state - 异步过程中的上下文
* SearchCompleted - 搜索完成时所触发的事件(事件参数 ContactsSearchEventArgs)
*
* ContactsSearchEventArgs
* Filter - 筛选关键字
* FilterKind - 筛选器的类别
* Results - 返回搜索结果,Contact 对象的集合
* State - 异步过程中的上下文
*
* Contact - 联系人
* Accounts - 与此联系人关联的数据源集合
* Addresses - 与此联系人关联的地址数据集合
* Birthdays - 与此联系人关联的生日数据集合
* Children - 子女
* Companies - 公司
* CompleteName - 联系人全称(包含诸如名字、职称和昵称之类的信息)
* DisplayName - 显示名称
* EmailAddresses - email 地址
* IsPinnedToStart - 是否固定到了开始屏幕
* Notes - 备注
* PhoneNumbers - 电话号码
* SignificantOthers - 与此联系人关联的重要他人
* Websites - 网站
*
* Account - 账户
* Name - 账户名称
* Kind - 账户的种类(Microsoft.Phone.UserData.StorageKind 枚举)
* Phone, WindowsLive, Outlook, Facebook, Other
*/
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.UserData;
namespace Demo.ContactsAndCalendar
{
public partial class ContactsDemo : PhoneApplicationPage
{
public ContactsDemo()
{
InitializeComponent();
}
private void btnGetData_Click(object sender, RoutedEventArgs e)
{
// 实例化 Contacts,注册相关事件
Contacts contacts = new Contacts();
contacts.SearchCompleted += new EventHandler<ContactsSearchEventArgs>(contacts_SearchCompleted);
// 指定搜索内容及搜索方式,开始异步搜索联系人信息
contacts.SearchAsync(String.Empty, FilterKind.None, null);
lblMsg.Text = "数据加载中,请稍后。。。";
btnGetData.IsEnabled = false;
}
void contacts_SearchCompleted(object sender, ContactsSearchEventArgs e)