我是WPF新手,我正在嘗試使用MVVM。我在我的視圖模型中使用CollectionViewSource來對照使用Entity Framework的SQL數據庫。移動到CollectionViewSource中的特定項目?
所以我們可以說我有這個類:
public class People
{
public int Id { get; set; }
public string name { get; set; }
}
而且可以說,這是我在數據庫:
ID:名稱:
兔八哥
Mick Jagger
米老鼠
唐老鴨
高飛
埃爾默法德語
達菲鴨
豬小弟
現在使用CollectionViewSource.View,我知道如何使用MoveCurrentToNext(),MoveCurrentToPrevious()等方法,這很好,但我需要移動到一個特定的名稱,例如唐老鴨。所以,如果我這樣做:
dbContext.Peoples.Find(4);
或者,如果我這樣做
dbContext.Peoples.Where(p => p.Name == "Donald Duck").FirstOrDefault();
這將讓我使用實體框架的數據庫對象的權利。但是,如果我這樣做:
CollectionViewSource.View.MoveCurrentTo(dbContext.Peoples.Find(4));
它不會移動,並且CollectionViewSource.View.CurrentItem爲空。
那麼如何有人搬到正確的項目?
你說得對。當你第一次說這個參考文獻每次我打電話的時候都不一樣的時候,它就像一堆磚頭一樣打擊我! DUH!因此,我只是創建列表,使用相同的列表將其引用到CollectionView.Source,並使用列表。找到(p => p.Id == 4)並且工作正常! –
deafie
很高興這有助於; ) – Bruno