В настоящее время я пытаюсь привязать DataGrid.ItemsSource к пользовательской RowCollection, которая реализует IList и INotifyCollectionChanged:
Public Class RowCollection(of T)<br>
Implements IList(Of T)<br>
Implements INotifyCollectionChanged<br>
Private _List As New List(Of T)<br>
...
(Извините за код VB, я скоро переведу весь свой код на C #.)
Обратите внимание, что класс не является производным от любой существующей коллекции CLR. Я создал свой собственный класс, потому что мне нужно переопределить GetItemAt, чтобы реализовать подкачку записей.
Коллекция внутренне добавляет и удаляет объекты из собственного закрытого списка _List
.
Теперь я могу просматривать элементы в DataGrid, но как только я дважды щелкаю ячейку для редактирования, я получаю InvalidOperationException: EditItems недоступно. .
У меня вопрос: какие еще интерфейсы я должен реализовать, чтобы сделать мою коллекцию полностью совместимой с DataGrid?