У меня есть два окна WPF.Главный содержит сетку, привязанную к ObservableCollection<Person>
.Я могу добавлять и удалять объекты (людей) из списка.У меня также есть другое окно, которое я могу показать, когда я изменяю человека.
Человек имеет три свойства: Имя, Фамилия и Возраст и правильно реализует INotifyPropertyChanged.В новом окне у меня есть 3 текстовых поля, которые связаны со статическим ресурсом Person с именем person.
Когда я инициализирую новое окно, я предоставляю объект Person конструктору, а затем хочу, чтобы свойства этого персонажа отображались втри текстовых поля.
Когда приведенный ниже код выглядит следующим образом, все работает правильно:
public ModifyPerson(Person modPerson)
{
// ... some code
Person p = this.Resources["person"] as Person;
p.Name = modPerson.Name;
p.LastName = modPerson.LastName;
p.Age = modPerson.Age;
}
Однако я предпочитаю делать это так:
public ModifyPerson(Person modPerson)
{
// ... some code
this.Resources["person"] = modPerson;
}
Но тогда этоне работает.(Ресурс назначен правильно, но в текстовых полях отсутствуют значения свойств modPerson.
Как это можно решить?