Windows Phone では、LINQ を使用して SQL データベースからデータを取得する ObservableCollection モデルをピボット コントロールに設定します。これは、初期設定で非常にうまく機能します。
しかし、DB にいくつかの変更を加えた後、UI (および ObservableColletion) への変更を反映するために LINQ クエリを再度実行したい場合、ObservableCollection が新しい値を取得しないことに気付きました。 LINQ クエリに期待します。
private ObservableCollection<ComicItem> m_showingComicsListModel;
public ObservableCollection<ComicItem> ShowingComicsListModel
{
...
}
...
var comicsSelectedInDB = from ComicItem item in comicListDb.Items
where item.IsShowing == true
select item;
m_showingComicsListModel = new ObservableCollection<ComicItem>(comicsSelectedInDB );
そのshowingComicsListModel
ため、 が初めて評価されるときに、モデルに適切に入力されます。しかし、DB にいくつかの変更を加えてこのコードをもう一度実行した後、ShowingComicsListModel
は変更されておらず、setter は呼び出されません。
ObservableCollection を LINQ で更新する適切な方法についてのヒントはありますか?