WPF Databinding не обновляется - PullRequest
0 голосов
/ 22 августа 2009

Я пытаюсь изменить содержимое ContentPresenter на один из моих классов View Model. Мне удается правильно показать его, как только я изменяю этот контент (свойство) из моей модели, он не обновляет интерфейс.

Следующие строки связывают классы модели моего представления с соответствующим пользовательским интерфейсом (устанавливая их контекст данных автоматически):

<DataTemplate DataType="{x:Type vm:WelcomePageViewModel}">
            <vw:WelcomePage></vw:WelcomePage>
 </DataTemplate>

 <DataTemplate DataType="{x:Type vm:UnitPageViewModel}">
            <vw:UnitPage></vw:UnitPage>
 </DataTemplate>

Я хочу показать пользовательский интерфейс, используя привязку:

<ContentPresenter Content="{Binding CurrentChildViewModel}" />

Итак, в моем классе ViewModel у меня есть свойство CurrentChildViewModel, которое является экземпляром closableViewModel. Сначала я назначаю его в конструкторе.

Но теперь, когда я изменяю значение моей CurrentChildViewModel, он не будет обновлять пользовательский интерфейс, даже если свойство изменяется в модели представления, первый назначенный элемент останется.

Я не вижу, что я делаю здесь неправильно. Возможно, я не использую правильную архитектуру (метод) для изменения содержимого элемента.

Ваша помощь будет принята с благодарностью. Заранее спасибо,

Борис

1 Ответ

2 голосов
/ 22 августа 2009

Убедитесь, что реализовано INotifyPropertyChanged . Инфраструктура привязки данных не постоянно «запрашивает» изменения привязок, а использует платформу изменения свойств для запуска обновлений для привязок.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...