C# IEditableCollectionView添加的对象类型是什么?

C# IEditableCollectionView添加的对象类型是什么?,c#,observablecollection,ieditableobject,icollectionview,ieditablecollectionview,C#,Observablecollection,Ieditableobject,Icollectionview,Ieditablecollectionview,使用IEditableCollectionView addNew()方法添加对象相当不错。但是,我不确定它与我的通用代码配合得有多好 我有一个可观察到的基类集合。根据用户希望看到的内容,可以使用DerivedA或DerivedB(或多个其他派生类型类)填充。它从来没有超过1的类型。关于这一点,我有以下几个问题,第一个是主要问题 1) 调用addNew()方法时添加的对象类型。我在猜测基数,但不确定。如果基础是抽象的呢?我是否可以确保它添加了一个特定的类型,或者是否已经实现了它添加了最相关的类型

使用IEditableCollectionView addNew()方法添加对象相当不错。但是,我不确定它与我的通用代码配合得有多好

我有一个可观察到的基类集合。根据用户希望看到的内容,可以使用DerivedA或DerivedB(或多个其他派生类型类)填充。它从来没有超过1的类型。关于这一点,我有以下几个问题,第一个是主要问题

1) 调用addNew()方法时添加的对象类型。我在猜测基数,但不确定。如果基础是抽象的呢?我是否可以确保它添加了一个特定的类型,或者是否已经实现了它添加了最相关的类型

2) 在使用派生类时,我是否会在使用ObservableCollection时遇到麻烦

3) 派生类都单独实现了IEditableObject,而Base则没有。我的愚蠢是错误的,因为我认为当你实现时,你必须定义方法。我可以将它们定义为抽象的,然后在派生类中重写它们,对吗?如果我不这样做,我会在IEditableCollection上遇到麻烦

更新:

我成功地修复了第3)项基类实现iEditableObject,并将抽象虚拟方法向下抛出到它的派生类。addNew方法不起作用,即使列表中填充了派生项

我看到了一个半解。Net framework 4.0实现了一个名为AddNewItem的新方法,您可以在其中定义要添加的项。应该使用非无参数构造函数和基类来解决这个问题。但是我在3.5版本中工作


有什么我能做的吗?

对于这类问题,请记住.net framework代码不是一个黑盒,您可以使用它进行反汇编,查看它在做什么,或者Microsoft是如何工作的。我建议您看看4.0方法,看看是否可以在3.5中为自己的目的复制它,并将其添加为扩展方法。

我已更新为.net 4.0,因此这不是一个真正的问题。但是你的回答对一个在这里绊倒的人来说很好。