プロパティの変更を通知
これは、私が頻繁に使用し、多くの作業を行うため、私のお気に入りです。
ショートカット:npc
で利用可能:C#2.0+式が許可されている場合。
if (value != _$LOWEREDMEMBER$)
{
_$LOWEREDMEMBER$ = value;
NotifyPropertyChanged("$MEMBER$");
}
マクロ:
- 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の処理をまったく行わない場合です。