Здравствуйте, Kathrine, Вы писали:
K>Здравствуйте.
K>У меня есть dataGrid в качестве DataSource там класс отнаследованный от BindingList<T> — MyBindingList. Для сохранения изменений мне нужен измененный Item из этого MyBindingList, то есть при изменениях в dataGrid срабатывает событие MyBindingList.OnListChanged и мне нужно запомнить измененный Item из MyBindingList. По ItemAdded и ItemChanged ListChangeType я легко получаю итемы по OldIndex или NewIndex.
K>Вопрос: Я могу как-то похожим образом получить Item который был удален из списка (по ItemDeleted)? Есть ли какое-то событие которое срабатывает перед удалением, чтобы я могла получить Item, а не получать событие, когда этого Item'a уже в списке нет?
K>Мне это нужно сделать именно внутри класса MyBindingList.
K>Спасибо.
Перекрывай в MyBindingList метод
protected virtual void RemoveItem(int index)
Всё удаление идёт через него. Будет тебе и индекс и удаляемый элемент
Также не забудь, что возможно в твоём случае также надо перекрыть
protected virtual void SetItem(int index, T item)
чтобы реагировать на "перезаписывание" элемента.
но это уже от задачи...