Возникла такая проблема. Как промежуток между датасетом и gui использую wrapклассы, содержащие в себе соответсвующий ряд и оборачивающие его колонки.
Ну ессно сам ряд передается в конструкторе.
Все тип-топ, пока не доходит до необходимости создавать новый элемент. Делать хочется в датагриде прямо, а не в отдельной форме, а для этого нужен пустой конструктор. Но тогда ряд еще не откуда получить. Ладно, перехватываем событие List_Changed и добавляем некий класс со значениями по умолчанию, но вот проблема, если сразу попытаться перейти обратно вверх на ряд, то этот ряд-то из датагрида удалиться (как только созданный и несиправленный), а вот ряд из dataset — нифига.
при этом от e.ListChangedType == ListChangedType.ItemDeleted тольку никакого, потому что e.NewIndex выдает индекс уже удаленного элемента и к нему, а следовательно и к враппаемому им ряду доступа нет.
Искать по датасету не к лицу с такой супер-пупер технологией, как адонет ...