У меня есть экземпляр класса моего класса Poste
(назовем его A
), который имеет привязку данных к моему интерфейсу.
Я хочу скопировать каждое отдельное свойство другого экземпляра класса Poste
(я назову его B
), не теряя привязку данных A
с моим интерфейсом.
Что я сначала наивно сделал:
//A already created
Poste B = new Poste();
A = B;
Конечно, это не сработало, потому что прошло ссылки.
После этого я услышал о shallow copy
и deep copy
, поэтому я попытался сделать полную копию моего экземпляра класса B
на A
.
(использовал класс глубокого копирования в интернете, он работает)
A = ObjectExtensions.Copy(B); //making a deep copy of B into A
Я думал, что он скопирует B
на тот же экземпляр A
, но привязка данных больше не работает, потому что INotifyPropertyChanged
не сработало.
Так есть ли простой способ скопировать каждое поле и свойство класса
без изменения текущего экземпляра и потери привязки данных?