[UWP][連絡先] 選択モードを指定する

スポンサーリンク

今回は連絡先ピッカーで選択モードを指定する方法について見ていきます。

連絡先ピッカーは、既定でユーザーが選択した連絡先のすべての情報を取得します。

選択モードを指定することで、アプリで必要なデータのみを取得するように限定することができます。

選択モードを限定するにはピッカーの SelectionMode に Windows.ApplicationModel.Contacts.ContactSelectionMode.Fields を指定します。

続いて、ピッカーの DesiredFieldsWithContactFieldType.Add メソッドで限定して取得する項目を指定します。今回はメールアドレスを取得するようにコードを記述してみます(以下コード参照)。

ピッカー表示後のif文は、連絡先が選択されていなかった場合に備えるものです。

取得したメールアドレスは、Emailsオブジェクトに入っています。Emials[0].Addressとすることで、選択された1件目のアドレスを取得することができます。

private async void btnGetContact_Click(object sender, RoutedEventArgs e)
{
    var picker = new Windows.ApplicationModel.Contacts.ContactPicker();

    // 選択モードをFieldsに設定
    picker.SelectionMode = Windows.ApplicationModel.Contacts.ContactSelectionMode.Fields;

    // 連絡先ピッカーで取得するフィールドを指定
    picker.DesiredFieldsWithContactFieldType.Add(
        Windows.ApplicationModel.Contacts.ContactFieldType.Email);  

    Contact contact = await picker.PickContactAsync();

    if (contact != null)
    {
        textBlockEmail.Text = contact.Emails[0].Address;
    }
}

実行例を以下に示します。

連絡先の選択

選択されたアドレスを表示

 

 

 

Please follow and like us:

コメント

タイトルとURLをコピーしました