List <T> 'yi bir ObservableCollection <T>' ye dönüştürme


Yanıtlar:


252

ObservableCollection <T>, IEnumerable <T> alan bir yapıcı aşırı yüklemesine sahip

Liste örneği int:

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

Liste için bir örnek daha ObjectA:

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

Bunu bir uzatma yöntemi oluşturmaya tercih ediyorum. Bağımlılık geri sayımının devam etmesine yardımcı olur.
markokstate

1
Bunun tersi nasıl yapılır?
Arun Prasad

19

ObervableCollection, listenizi iletebileceğiniz yapıcıya sahiptir. MSDN'den alıntı :

 public ObservableCollection(
      List<T> list
 )

6

Gözlemlenebilir Koleksiyon yapıcısı bir IList veya IEnumerable alacaktır.

Bunu çok sık yapacağınızı fark ederseniz basit bir uzatma yöntemi yapabilirsiniz:

    public static ObservableCollection<T> ToObservableCollection<T>(this IEnumerable<T> enumerable)
    {
        return new ObservableCollection<T>(enumerable);
    }
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.