Перепривязка DataContext окна в WPF - PullRequest
1 голос
/ 17 января 2011

У меня есть окно в WPF, для которого я определил dataContext. У меня есть кнопка сохранения и при нажатии кнопки сохранения я добавляю обновленный текстовый текст в коллекцию и определяю новый экземпляр объекта текстового текста для текущего окна. Теперь, как мне обновить окно с новым DataContext.

Я пробовал это

  this.DataContext=insClassA;//Initially it is set

  //Later on some event i'm updating the NewAttributeProperty
  insClassA.NewAttribute = new NewAttribute();

но поля UIF по-прежнему содержат значения предыдущего экземпляра /

Спасибо.

1 Ответ

1 голос
/ 17 января 2011

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

ОБНОВЛЕНИЕ:

На основании вашего редактированияЯ предполагаю, что ваш объект не реализует INotifyPropertyChanged и не является DependencyObject, или свойство с ошибкой не является DependencyProperty.Мне кажется, что проблема не в DataContext.

Ваш объект должен сообщить среде, что свойство было изменено.Обычно BO делают это с помощью PropertyChanged-события.Поищите WPF DataBinding и INotifyPropertyChanged, и вы найдете много информации по этой теме.

...