1

エミュレーターでアプリをテストすると、連絡先リストが表示されます。しかし、デバイスの連絡先リストでテストすると表示されません。HTCレーダーを使用しています。ここに私のコードスニペットがあります:

AddressChooserTask addressTask;        
    public ContactsPage()
    {
        InitializeComponent();
        addressTask = new AddressChooserTask();
        addressTask.Completed += new EventHandler<AddressResult>(addressTask_Completed);
    }

    void addressTask_Completed(object sender, AddressResult e)
    {
        if (e.TaskResult == TaskResult.OK)
        {
            string displayName = e.DisplayName;

            Contacts contacts = new Contacts();
            contacts.SearchCompleted += new EventHandler<ContactsSearchEventArgs>(contacts_SearchCompleted);
            contacts.SearchAsync(displayName, FilterKind.DisplayName, null);
        }
    }        


private void btnChooseContacts_Click(object sender, RoutedEventArgs e)
    {
        addressTask.Show();
    }

誰か私を問題から解放してください!前もって感謝します !

4

1 に答える 1

0

変なことをたくさんしている。
1 つ目は、foreach ループで同じオブジェクトを何度も割り当てていることです。したがって、最後の項目が空白の場合、結果のテキスト ボックスは空白になります。
第 2 に、null の可能性があるプロパティを参照しようとしています。FirstOrDefault() は null を返す可能性があるため、それを確認してください。
3番目。代わりに、データバインディングを使用して、結果をリストボックス (または他のデータバインド可能な UI 要素) にバインドする必要があります。

于 2012-06-01T08:54:54.437 に答える