pschelpdesk/Shared/ViewModels/ViewModelBase.cs
2024-11-26 19:08:52 +01:00

26 lines
754 B
C#

using System.Collections.Generic;
using System.ComponentModel;
using System.Runtime.CompilerServices;
using NP.Ava.UniDockService;
namespace PSCHelpdesk.Shared.ViewModels;
public class ViewModelBase :INotifyPropertyChanged
{
public event PropertyChangedEventHandler PropertyChanged;
protected virtual void RaisePropertyChanged([CallerMemberName] string propertyName = null)
{
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
protected void SetAndRaisePropertyChanged<T>(
ref T field, T value, [CallerMemberName] string propertyName = null)
{
if (!Equals(field, value))
{
field = value;
RaisePropertyChanged(propertyName);
}
}
}