add wrapper for group

main
Kimi Loeffel 3 years ago
parent ce07524443
commit f87c662e9d

@ -16,21 +16,14 @@ namespace YOUserbase {
Id = ++index; Id = ++index;
} }
// Change value so setter looks a bit nicer :) // Wrpper to change vaulue and notify if it changed
private void ChangeValue<T>(ref T field, T value) { private void ChangeValue<T> (ref T field, T value, [CallerMemberName] string propertyName = "") {
if(!value.Equals(field)) { if(!value.Equals(field)) {
field = value; field = value;
NotifyPropertyChanged(); PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
} }
} }
// This method is called by the Set accessor of each property.
// The CallerMemberName attribute that is applied to the optional propertyName
// parameter causes the property name of the caller to be substituted as an argument.
private void NotifyPropertyChanged([CallerMemberName] string propertyName = "") {
if(PropertyChanged != null) { PropertyChanged(this, new PropertyChangedEventArgs(propertyName)); }
}
public event PropertyChangedEventHandler PropertyChanged; public event PropertyChangedEventHandler PropertyChanged;
} }
} }

@ -34,22 +34,14 @@ namespace YOUserbase {
Id = id; Id = id;
} }
// Change value so setter looks a bit nicer :) // Wrpper to change vaulue and notify if it changed
private void ChangeValue<T> (ref T field, T value, [CallerMemberName] string propertyName = "") { private void ChangeValue<T> (ref T field, T value, [CallerMemberName] string propertyName = "") {
if(!value.Equals(field)) { if(!value.Equals(field)) {
field = value; field = value;
NotifyPropertyChanged(propertyName); PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
} }
} }
// This method is called by the Set accessor of each property.
// The CallerMemberName attribute that is applied to the optional propertyName
// parameter causes the property name of the caller to be substituted as an argument.
private void NotifyPropertyChanged([CallerMemberName] string propertyName = "") {
Console.WriteLine(propertyName);
if(PropertyChanged != null) { PropertyChanged(this, new PropertyChangedEventArgs(propertyName)); }
}
public event PropertyChangedEventHandler PropertyChanged; public event PropertyChangedEventHandler PropertyChanged;
} }
} }

@ -46,10 +46,8 @@ public partial class UserOverviewPage : ContentPage {
protected bool SetProperty<T>(ref T field, T newValue, [CallerMemberName] string propertyName = null) { protected bool SetProperty<T>(ref T field, T newValue, [CallerMemberName] string propertyName = null) {
if(!Equals(field, newValue)) { if(!Equals(field, newValue)) {
field = newValue; field = newValue;
// PropertyChanged?.Invoke (this, new PropertyChangedEventArgs (propertyName));
return true; return true;
} }
return false; return false;
} }
} }
Loading…
Cancel
Save