我目前正在尝试将 DataGrid.ItemsSource 绑定到自定义 RowCollection,该 RowCollection 实现了 IList 和 INotifyCollectionChanged:
Public Class RowCollection(of T)
Implements IList(Of T)
Implements INotifyCollectionChanged
Private _List As New List(Of T)
...
(对不起 VB 代码,我很快就会把我所有的代码翻译成 C#。)
请注意,该类不是从任何现有的 CLR 集合派生的。我创建了自己的类,因为我需要重写 GetItemAt,以实现记录分页。Collection 在内部从它自己的私有 List 中添加和删除对象_List
。
现在,我可以查看 DataGrid 中的项目,但只要双击要编辑的单元格,我就会收到InvalidOperationException:'EditItems' 不可用。.
我的问题是,为了使我的集合与 DataGrid 完全兼容,我应该实现哪些其他接口?