Sürekli değişen bir Listeyi (harici model) gösteriyorum (her iki saniyede bir söyleyelim). A ViewModel, PropertyChange olayları için kayıt olan listeyi bilir. Bu ViewModel ayrıca veri bağlama için kullanıcı arayüzüne bir GözlemlenebilirKoleksiyon sağlar. güncellemeler sürekli yapılan yanında iyi çalışıyor PrensipteModelin değişen Listesini ViewModel'in Gözlemlenebilir Listesi ile senkronize etmek için en iyi uygulama?
+-----------------------------------------------+
| View|
| +-----------+ |
| |Listbox | |
| +-----------+ |
+-----/\----------------------------------------+
||
||DataBinding
||
||
+-----||----------------------------------------+
| || ViewModel|
| +--------------------+ +-------------+|
| |ObservableCollection|<--------|ChangeHandler||
| +--------------------+ / +-------------+|
| / ^ |
+-------------------------/------------|--------+
/ |
/ |
Synchronizing Lists | PropertyChanged
|
|
+--------------------------------------|--------+
| +-----+ Model|
| |IList| |
| +-----+ |
| |
+-----------------------------------------------+
. Her güncellemede kullanıcı seçimini kaybeder, yani tüm güncellemeler ile tüm öğeler seçimden kaldırılır. Bu WPF'nin ListBox'un yeni bir listenin atandığını "gördü" diye hayret verici değil.
Yani, şey değil yeni ObservableCollection atamak yapmak olabilir, ama sorularım Şimdi güncellenmiş Model.List
ile
- senkronize Listeleri geçerli ObservableCollection içeriğini birleştirmek gerekir - Böyle bir birleştirme yapmak için en iyi uygulamalar (veya çerçeveler) var (Yeni öğeleri ObservableCollection'a kopyala, Eksik olanları silme, değiştirilen öğeleri güncelleştirme)
- Seçili Öğe - Bunu nasıl temin edebilirim ListBox, seçili olan öğeyi (öğenin kaldırıldığı durumun yanı sıra) saklar.
+1 Güzel diyagram =] –
Teşekkürler. Ben çok görsel bir insanım ve bazı resimlere ihtiyacım var. Jave5 – Seven