Я действительно влюбляюсь в всю схему привязки данных .Net ... но, видимо, есть еще несколько ошибок.Допустим, у моего класса есть переменная-член типа double с именем Susan
.Что ж, похоже, нет непосредственного способа привязать Susan
к текстовому полю SusanText
, потому что привязка выглядит примерно так
SusanText.DataBindings.Add("Text",datasource,"Property")
А Susan
не являетсяимущество.Так что я могу сделать Susan
публичной собственностью, но это вроде как воняет ... что если я захочу скрыть Susan
?(Полагаю, я мог бы сделать Susan
публичным свойством частного экземпляра некоторого внутреннего класса ... но для небольшого двойника это большая работа.) Однако у меня возникла более серьезная проблема, поэтому радиВ качестве аргумента давайте продолжим и сделаем следующее:
private double Susan_;
public double Susan{ get; set;}
...
SusanText.DataBindings.Add("Text",this,"Susan")
Тогда все изначально кажется работающим, как и ожидалось.Если я изменяю SusanText
, Susan
изменяется соответственно.Однако проблема возникает, когда я изменяю Susan
напрямую.Я бы хотел, чтобы SusanText
автоматически обновлялся.Поэтому я подозреваю, что мне нужно сделать Susan
подклассом double, который реализует некоторый интерфейс IBindable, так что если Susan
связан с данными SusanText
, что соответствующие События зарегистрированы, и Susan
уведомит других, если она
Какой самый простой способ заставить Susan
делать то, что я от нее хочу?
Спасибо!