Повідомте власність змінено
Це мій улюблений, тому що я ним часто користуюся, і це робить для мене велику роботу.
Ярлик : npc
Доступно в : C # 2.0+, де вираз дозволено.
if (value != _$LOWEREDMEMBER$)
{
_$LOWEREDMEMBER$ = value;
NotifyPropertyChanged("$MEMBER$");
}
Макроси :
- ЧЛЕН - Містить ім’я типу члена. Не можна редагувати. Примітка: переконайтесь, що цей є першим у списку.
- LOWEREDMEMBER - Значення MEMBER з першим символом у нижньому регістрі. Не можна редагувати.
Використання : всередині сеттера властивостей, як це:
private string _dateOfBirth;
public string DateOfBirth
{
get { return _dateOfBirth; }
set
{
npc<--tab from here
}
}
Він передбачає, що ваша змінна підтримки починається з "_". Замініть це тим, чим ви користуєтесь. Також передбачається, що у вас є метод зміни властивостей приблизно такий:
private void NotifyPropertyChanged(String info)
{
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(info));
}
}
Насправді, версія цього, яку я використовую, заснована на лямбда (тому що я люблю свої лямбди!) І створює наведене нижче. Принципи такі ж, як і вище.
public decimal CircuitConductorLive
{
get { return _circuitConductorLive; }
set { Set(x => x.CircuitConductorLive, ref _circuitConductorLive, value); }
}
Саме тоді я не використовую надзвичайно елегантний та корисний PostSharp для того, щоб виконувати всю справу INotifyPropertyChanged без жодних зусиль , тобто.