Преобразовать список <T> в ObservableCollection <T>

У меня есть List<T>, который заполняется из JSON. Мне нужно преобразовать его в ObservableCollection<T>, чтобы связать его с моим GridView.

Любые предложения?

Ответ 1

ObservableCollection <T> имеет конструктор перегрузка который принимает IEnumerable <T>

Пример для списка int:

ObservableCollection<int> myCollection = new ObservableCollection<int>(myList);

Еще один пример для списка ObjectA:

ObservableCollection<ObjectA> myCollection = new ObservableCollection<ObjectA>(myList as List<ObjectA>);

Ответ 2

ObervableCollection имеет конструктор, в котором вы можете передать свой список. Цитирование MSDN:

 public ObservableCollection(
      List<T> list
 )

Ответ 3

Конструктор Observable Collection примет IList или IEnumerable.

Если вы обнаружите, что собираетесь сделать это, вы можете сделать простой метод расширения:

    public static ObservableCollection<T> ToObservableCollection<T>(this IEnumerable<T> enumerable)
    {
        return new ObservableCollection<T>(enumerable);
    }