Telerik OpenAccess.使用其他类型的集合而不是IList<;T>;

本文关键字:IList gt lt OpenAccess 其他 类型 集合 Telerik | 更新日期: 2023-09-27 18:24:28

我创建了一个继承自ObservableCollection<T>的类,并希望使用它来代替IList<T>。当我修改生成器以生成ObservableCollection<T>MyCollectionClass<T>(继承ObservableCollection<T>)时,它会给出以下错误:

"MyCollectionClass"不包含"Customer"的定义,也没有接受第一个的扩展方法"Customer"未能找到"MyCollectionClass"类型的参数(您是否缺少using指令或程序集引用?)

以前有人遇到过这个问题吗?谢谢你的帮助!

Telerik OpenAccess.使用其他类型的集合而不是IList<;T>;

您可以使用TrackedBindingList,但当您这样做时,您必须提供集合项的数据类型。

companies.HasAssociation<Customer>(c => c.Customer)
    .WithOpposite(c => c.Company)
    .HasConstraint((c,​cc) => c.ID == cc.CustomerID);

您可以使用此处和此处列出的信息自行解决问题。

我在回答我自己的问题:我创建了自己的集合类,并使其继承自TrackedBindingList,并实现了INotifyCollectionChanged。这就解决了这个问题。