0

listpicker.selecteditems に項目を追加しようとするたびに、「'System.NullReferenceException' 型の例外」という奇妙なメッセージが表示されます。コードは次のとおりです。

if (wine != null)
{
    foreach (string s in wine.Varietal.Split(';'))
    {
        var selectedTip = (from item in tips where item.Name == s select item).FirstOrDefault();
        if (selectedTip != null)
        {
                varietalListPicker.SelectedItems.Add(selectedTip);
        }
    }
}

selectedTip は null ではなく、正しいように見えますが、デバッガーが null 参照例外と言う理由がわかりません。単一選択リストのコードは正常に機能しているようですが、複数選択リストの場合、ここで何が間違っているのかよくわかりません。

4

1 に答える 1

1

これが機能しない理由は簡単です。SelectedItems プロパティが読み取り専用だからです。このプロパティにセッターを追加する必要があります。

役に立つブログ エントリを見つけたと思います。「SelectedItems の設定をサポートするための ListPicker の拡張」セクションにジャンプして、SelectedItems プロパティを適切に変更する方法を確認してください。

于 2013-01-02T14:28:56.470 に答える