Можем ли мы обновить источник, который не является DepencyProperty или не соответствует INotifyPropertyChanged - PullRequest
2 голосов
/ 29 апреля 2010

У меня есть бизнес-объект, который происходит из ядра приложения. Этот объект не наследуется от INotifyPropertyChanged. Он содержит некоторое свойство, которое связывает с ним мой код XAML. Я только хочу динамически обновлять свойства, а не пользовательский интерфейс (стиль OneWayToSource).

Например, если я изменю текст текстового поля, исходный элемент не обновляется. Silverlight ограничен тем, что если объект не реализует INotifyPropertyChanged или использует DepencyProperties, то источник привязки не может быть обновлен?

Ответы [ 2 ]

2 голосов
/ 29 апреля 2010

Свойство source не обязательно должно быть свойством зависимости, а класс, который его предоставляет, не нуждается в реализации INotifyPropertyChanged.

Если у вас есть привязка для TextBox, установленная для использования режима TwoWay, редактирование текстового поля должно обновить свойство bound, даже если это простое свойство vanila.Обратите внимание, что по умолчанию фокус должен покинуть TextBox для обновления привязки.

0 голосов
/ 29 апреля 2010

Если у вашего бизнес-объекта есть метод set для свойства, которое вы хотите обновить, то значение должно быть обновлено, если введенное вами значение не вызывает исключения.

Не реализовано INotifyPropertyChanged препятствует только визуальной обратной связи.

...