在 Windows Phone 中,我使用 ObservableCollection 模型填充我的 Pivot 控件,该模型使用 LINQ 从 SQL 数据库中获取其数据。这在初始设置中非常有效。
但是当我对数据库做了一些更改,然后我想再次运行 LINQ 查询以反映对 UI(和 ObservableCollection)的更改时,我注意到 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
第一次评估时,它会正确填充模型。但是在我对数据库进行了一些更改并第二次运行此代码之后,ShowingComicsListModel
并没有改变,也没有调用 setter。
关于使用 LINQ 更新 ObservableCollection 的正确方法的任何提示?