我正在使用WPF,有一个通用列表:List。 现在我希望将其转换为通用可观察集合:ObservableCollection。
我知道我可以遍历列表并将每个单独的项添加到可观察集合中。 但是,对我来说似乎必须有一种内置的方法来完成这个操作。
我正在使用WPF,有一个通用列表:List。 现在我希望将其转换为通用可观察集合:ObservableCollection。
我知道我可以遍历列表并将每个单独的项添加到可观察集合中。 但是,对我来说似乎必须有一种内置的方法来完成这个操作。
如果你只想从一个List
创建一个ObservableCollection
,那么你需要做的就是:
ObservableCollection<MyType> obsCollection = new ObservableCollection<MyType>(myList);
var _oc = new ObservableCollection<ObjectType>(_listObjects);
ObservableCollection有针对IEnumerable<T>
的构造函数。ObservableCollection
ObservableCollection<yourType> observable =
new ObservableCollection<yourType>(yourListObject);
public static ObservableCollection<T> ToObservableCollection<T>(this IEnumerable<T> coll)
{
var c = new ObservableCollection<T>();
foreach (var e in coll) c.Add(e);
return c;
}
或者你可以使用这个constructor。元素被复制到ObservableCollection中的顺序与列表枚举器读取它们的顺序相同。
ObservableCollection<YourObject> collection = new ObservableCollection<YourObject>(yourList);