protected void UpdatePropertyValue <T>(ref T field, T value, RedmineObjectProperty <T> property) { if (!EqualityComparer <T> .Default.Equals(field, value)) { field = value; OnPropertyChanged(property); } }
protected void OnPropertyChanged(RedmineObjectProperty property) { var handler = PropertyChanged; if (handler != null) { handler(this, new RedmineObjectPropertyChangedEventArgs(property)); } }
public RedmineObjectPropertyChangedEventArgs(RedmineObjectProperty property) { _property = property; }
public object GetValue(RedmineObjectProperty property) { Verify.Argument.IsNotNull(property, nameof(property)); return(GetType().GetProperty(property.Name).GetValue(this, null)); }
protected void OnPropertyChanged(RedmineObjectProperty property) => PropertyChanged?.Invoke(this, new RedmineObjectPropertyChangedEventArgs(property));