Не удается подружить ITypedList и INotifyPropertyChanged
От: anikss  
Дата: 19.11.09 12:50
Оценка:
Здравствуйте! Так как тем по биндингу я поиском нашел больше в .NET GUI, напишу свою просьбу здесь.

Написал свой класс Binder, который реализует IEnumerable<Obj> (IList<Obj>) для хранения единственного экземпляра объекта (соответственно, IList.Count всегда возвращает 1, а IList.Add()/IList.Remove() не реализованы и т.д.).

Также класс Binder реализует интерфейс ITypedList и возвращает некоторый нужный мне набор свойств объекта. При чтении/записи данных в объект Obj работа происходит не со свойствами Obj напрямую, вызываются методы Obj.Get/SetField(fieldName, value).

Когда я запустил и прибиндил контролы к Binder, то увидел, что данные биндятся, но их модификация не вызывает обновление контролов. Тогда я реализовал интерфейс INotifyPropertyChanged для Obj (правильно ли я сделал? может, надо было реализовать его для Binder?). Проверил, событие вызывается когда нужно. К сожалению, ничего хорошего в плане обновления контролов это не дало.

Поставил у контрола BindingMode = OnPropertyChanged (или как там), толку ноль.

Подскажите пожалуйста, может я чего-то упустил в реализации, и чего-то не доделал?
Спасибо!
data binding
Re: Удалось
От: anikss  
Дата: 19.11.09 14:40
Оценка:
Удалось с N-й попытки.
Реализовал IBindingList...
Спасибо за внимание!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.