win8开发(14)——如何选取联系人信息

前面我们讲了如何用文件选择器选取文件,其实,还有一个目录选择器,不过,我先放着

不说,因为它用起来和选取文件是一个道理,大家不妨尝试一下举一反六。

今天,我们说一说如何从“人脉”中选取联系人信息,说白了,也和文件选取的方法基本

一样,后面做实例演练的时候,大家会看到的。


在开始实践之前,我们需要准备一些数据,即联系人,如果没有,你可以随便加几个来测试。
从可爱的“开始”屏幕中找到“人脉”应用,并启动。
1.png

如果是第一次使用,会要求你输入MS帐号获取联系人,我们就按提示操作,如果你没有

Live ID,就随便申请一个呗。


2.png

验证并登陆成功后,你就会看到你的好友们了。

3.png

如果你还没有联系人,调出工具条,点击“新建”按钮。

4.png

至于联系人信息,我们目前只是测试,所以,随例填就行了,如下图所示。

5.png

填完后,点击“保存”,这样就创建了联系人记录。为了方便测试,你可以多建N条记录。

好了,有了数据,我们就可以动手练习了。
1、启动美丽的VS2012,新建一个app应用。
2、打开MainPage.xaml,界面这按下面的XAML布局即可,简便易读嘛。
<Page
x:Class="myAppExample.MainPage"
xmlns="
http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="
http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:myAppExample"
xmlns:d="
http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="
http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d">

<Grid Background="{StaticResource ApplicationPageBackgroundThemeBrush}">
<Grid.RowDefinitions>
<RowDefinition Height="auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<StackPanel Grid.Row="0" Margin="15,27,0,22">
<Button Content="选取联系人" Click="onPick"/>
</StackPanel>

<ListView Grid.Row="1" Margin="25" x:Name="lvContacts" ScrollViewer.

HorizontalScrollMode="Auto" ScrollViewer.HorizontalScrollBarVisibility="Auto">

<ListView.ItemsPanel>
<ItemsPanelTemplate>
<WrapGrid Orientation="Vertical" MaximumRowsOrColumns="5" ItemWidth="300" VerticalChildrenAlignment="Center"/>
</ItemsPanelTemplate>
</ListView.ItemsPanel>
</ListView>
</Grid>
</Page>

3、在XAML文档中,找到Button的Click事件处理程序,从弹出的菜单中选择

“定位到事件处理程序”。

6.png



后台的处理代码,如下。
幻影组,如果您要查看本帖隐藏内容请 回复

a、记得引入命名空间Windows.ApplicationModel.Contacts,我们用到的ContactPicker类就在

该命名空间下;

b、通过调用PickMultipleContactsAsync方法,可以一次性选择多位联系人,它是一个异步方法

,记得加上等待关键字;

c、每一位联系人的信息,由一个ContactInformation实例表示,因为通过foreach循环可以取出

所选择的联系人信息,其中Name属性表示不联系人的名字,本例我们需要取得联系人的手机

号码,因而我们访问PhoneNumbers属性,由于一位联系人可能拥用N个手机号码(比如工作

用的,家庭用的,泡妞专用的),所以,无论是PhoneNumbers属性也好,Emails属性也罢,

都是一个ContactField列表,而每个ContactField就代表一个字段信息,重要的属性我们一般

会读取Name和Value,比如:

phoneno : 13521103823
email :abcd@126.com
Name就是phoneno,Value就是13521103823。

现在,我们可以运行应用程序了。
7.png

8.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值