2017-08-04 70 views
0

我在設計一個UWP電影應用程序,我需要幾個ObservableCollections來存儲不同的電影列表。我想使用ObservableCollection [Index],但不知道如何初始化它。 我嘗試下面的代碼,但失敗:如何初始化ObservableCollection數組?

public static ObservableCollection<Subject>[] FullMovieList = new ObservableCollection<Subject>[6];  

我怎樣才能做到呢? Thx〜

+1

'失敗' - 你能提一下你有什麼錯誤嗎? – Nipun

+0

我不能確切地記得,它主要是關於nullexception左右:-D –

回答

1

您創建正確的ObservableCollection<Subject>陣列。 但是你只創建數組,而不是數組本身的集合。

你也應該創建集合;

for (int a = 0; a < FullMovieList.Length; a++) 
{ 
    FullMovieList[a] = new ObservableCollection<Subject>(); 
} 
0

每次你想添加對象的範圍時建立一個新的集合是不好的,而我會按照下面的設計。

建立一個類從ObservableCollection繼承,這樣您就可以訪問是受保護的項目屬性,然後創建一個AddRange方法將添加項目到它

public class MyObObservableCollection<T> : ObservableCollection<T> 
{ 
    public void AddRange(IEnumerable<T> items) 
    { 
     foreach (var item in items) 
     { 
      this.Items.Add(item); 
     }  
    } 

    OnCollectionChanged(new NotifyCollectionChangedEventArgs(NotifyCollectionChangedAction.Add)); 
}