我正在设计一个UWP电影应用程序,我需要几个可观察集合来存储不同的电影列表。我想使用 ObservableCollection[Index],但不知道如何初始化它。 我尝试了以下代码,但失败了:
public static ObservableCollection<Subject>[] FullMovieList = new ObservableCollection<Subject>[6];
我怎样才能完成它?感谢~
您正确地创建了ObservableCollection<Subject>
数组。 但是您只创建数组,而不是数组本身中的集合。
您还应该创建集合;
for (int a = 0; a < FullMovieList.Length; a++)
{
FullMovieList[a] = new ObservableCollection<Subject>();
}
每次要添加对象范围时构建一个新集合并不好,而是我会遵循以下设计。
构建一个继承自ObservableCollection
的类,以便您可以访问受保护的 Items 属性,然后创建一个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));
}