Jak skopiować elementy z List<..> do ObservableCollection<...>?

0

Oczywiście pomijam rozwiązanie kopiowania po elemencie w pętli, bo na to sam wpadłem. Podobnie przez użycie konstruktora, ponieważ ObservableCollection już istnieje.
Jakieś pomysły?

0

Są dostępne jedynie te dwa powyższe, po co CI kolejny?

0

Co jest złego w skopiowaniu w pętli element po elemencie (złożoność kopiowania i tak będzie O(n))?

0
neves napisał(a):

Są dostępne jedynie te dwa powyższe, po co CI kolejny?

Myślałem o czymś w stylu AddRange, którego nie znalazłem w ObservableCollection, ale jak nie ma to co zrobić.

0

Podmienia się ObservableCollection na nową instancję (czyli konstruktor), albo odpina się binding łączący kolekcje z UI i dodaje pojedynczo i podpina z nowu. Preferowana jest opcja z podmianą.

0

Spróbuj tego :

MyObservableColletction = new ObservableCollection<MyModel>(myList.Select(md => new MyModel(md)));

1

Jeżeli możesz użyć swojej klasy, to są implementacje ObservableCollection<T> z dostępnym AddRange(): https://stackoverflow.com/questions/670577/observablecollection-doesnt-support-addrange-method-so-i-get-notified-for-each

1 użytkowników online, w tym zalogowanych: 0, gości: 1