/// <summary> /// プロパティの値が既にセットされているものでないかを確認し、 /// 必要な場合にのみプロパティをセットしリスナーに通知します。 /// </summary> /// <typeparam name="T">プロパティのタイプ。</typeparam> /// <param name="storage">getterとsetterの両方を伴うプロパティに対する参照。</param> /// <param name="value">プロパティにセットする値。</param> /// <param name="onChanged">アクションは値が変更された後に呼び出されます。</param> /// <param name="args">PropertyChangedEventArgsです。</param> /// <returns>値が変更された場合は真であり、既に値がセットされている場合は偽です。</returns> protected virtual bool SetProperty <T>(ref T storage, T value, Action onChanged, PropertyChangedEventArgs args) { return(ObservableObjectExtImpl.SetProperty(ref storage, value, onChanged, RaisePropertyChanged, args)); }
/// <summary> /// PropertyChangedイベントを発火させます。 /// </summary> /// <param name="args">PropertyChangedEventArgsです。</param> protected void RaisePropertyChanged(PropertyChangedEventArgs args) { ObservableObjectExtImpl.RaisePropertyChanged(PropertyChanged, this, args); }