Files
bodyshop-uploader/BodyshopUploader/Utils/BaseViewModel.cs
2020-05-27 08:59:48 -07:00

28 lines
861 B
C#

using System;
using System.ComponentModel;
using System.Runtime.CompilerServices;
namespace BodyshopPartner
{
public abstract class BaseViewModel : INotifyPropertyChanged
{
public event PropertyChangedEventHandler PropertyChanged;
protected bool SetProperty<T>(ref T storage, T value, [CallerMemberName] String propertyName = null)
{
if (object.Equals(storage, value)) return false;
storage = value;
this.OnPropertyChanged(propertyName);
return true;
}
protected void OnPropertyChanged([CallerMemberName] string propertyName = null)
{
var eventHandler = this.PropertyChanged;
if (eventHandler != null)
{
eventHandler(this, new PropertyChangedEventArgs(propertyName));
}
}
}
}