Risposte:
ObservableCollection <T> ha un overload del costruttore che accetta IEnumerable <T>
Esempio per un elenco di int
:
ObservableCollection<int> myCollection = new ObservableCollection<int>(myList);
Un altro esempio per un elenco di ObjectA
:
ObservableCollection<ObjectA> myCollection = new ObservableCollection<ObjectA>(myList as List<ObjectA>);
ObervableCollection ha un costruttore in cui puoi passare la tua lista. Citando MSDN :
public ObservableCollection(
List<T> list
)
Il costruttore di Observable Collection prenderà un IList o un IEnumerable.
Se scopri che lo farai spesso, puoi creare un semplice metodo di estensione:
public static ObservableCollection<T> ToObservableCollection<T>(this IEnumerable<T> enumerable)
{
return new ObservableCollection<T>(enumerable);
}