これは、属性について学習していて、INotifyPropertyChangedをあまりにも多く使用していたため、考えていただけです。ちょうどIdeaで、これについていくつかの意見を聞きたいと思います。属性の使用... INotifyPropertyChanged
INotifyPropertyChangedは、ほとんどの場合、同じパターンで使用されるため、プロパティの名前でイベントを起動するメソッドと同じように、コンパイル時には、それは属性と自動プロパティを使用して設計できますか?コンパイラはPropertyChangedイベントへの呼び出しを追加する必要があることを知りますか?我々は
public class DemoCustomer : INotifyPropertyChanged
{
public event PropertyChangedEventHandler PropertyChanged;
private void NotifyPropertyChanged(String info)
{
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(info));
}
}
private string companyNameValue = String.Empty;
...
}
代わりのプロパティ
public string CompanyName
{
get
{
return this.companyNameValue;
}
set
{
if (value != this.companyNameValue)
{
this.companyNameValue = value;
NotifyPropertyChanged("CompanyName");
}
}
}
を宣言....クラスを持っている場合、我々はそれが必要であることを、この属性により、コンパイラに指示することができる場合 だから我々はこのような何かを行うことができます新しい値が前の
[NotifyPropertyChanged]
public string CompanyName
{
get;set;
}
と異なる場合プロパティの名前を持つにPropertyChangedへの呼び出しを生成する我々はまだトンでコーディング保つことができます属性を使用していないときのいくつかのカスタムビヘイビアのための古い方法です。
非常に良い読書..ありがとうございました...私はポストシャープを使い始めました...それが私が他の答えを指している理由です。しかし、これも同様に便利です。 – jmayor