Поддерживает ли событие PropertyChanged представления в течение всей жизни моделей, которые его используют?
Например, этот код не поддерживает представление в течение всей жизни модели представления?
public MyView(MyViewModel a_viewModel)
{
Loaded += (s, e) =>
{
DataContext = a_viewModel;
};
}
ОК, плохой пример. Вот код, который меня действительно беспокоит в моем ViewModelBase
классе:
protected void RelayPropertyChanges(INotifyPropertyChanged a_source, String a_strSourceProperty, String a_strTargetProperty)
{
ValidatePropertyExists(a_strTargetProperty);
if (a_source is ViewModelBase)
(a_source as ViewModelBase).ValidatePropertyExists(a_strSourceProperty);
a_source.PropertyChanged += (s, e) => OnPropertyChanged(a_strTargetProperty);
}
И я только что понял, что это не будет работать правильно. Я вернусь к вам, ребята, по этому вопросу; какие-нибудь идеи о том, как сделать эту работу?