Respuestas:
ObservableCollection <T> tiene una sobrecarga de constructor que toma IEnumerable <T>
Ejemplo de una lista de int
:
ObservableCollection<int> myCollection = new ObservableCollection<int>(myList);
Un ejemplo más de una lista de ObjectA
:
ObservableCollection<ObjectA> myCollection = new ObservableCollection<ObjectA>(myList as List<ObjectA>);
ObervableCollection tiene un constructor en el que puede pasar su lista. Citando MSDN :
public ObservableCollection(
List<T> list
)
El constructor de la colección observable tomará un IList o un IEnumerable.
Si encuentra que va a hacer mucho esto, puede crear un método de extensión simple:
public static ObservableCollection<T> ToObservableCollection<T>(this IEnumerable<T> enumerable)
{
return new ObservableCollection<T>(enumerable);
}