Określanie rozmówcy wewnątrz setera - lub ustawianie właściwości, po cichu
Biorąc pod uwagę implementację modelu widoku standardowego, kiedy zmienia się właściwość, czy istnieje sposób na określenie twórcy zmiany? Innymi słowy, w następującym modelu widoku chciałbym, aby argument „nadawca” zdarzenia „PropertyChanged” był rzeczywistym obiektem, który wywołałProp1
seter:
public class ViewModel : INotifyPropertyChanged
{
public double Prop1
{
get { return _prop1; }
set
{
if (_prop1 == value)
return;
_prop1 = value;
// here, can I determine the sender?
RaisePropertyChanged(propertyName: "Prop1", sender: this);
}
}
private double _prop1;
// TODO implement INotifyPropertyChanged
}
Alternatywnie, czy możliwe jest zastosowanieCallerMemberNameAttribute
do ustawiania nieruchomości?