PropertyChangedTracker.cs 592 B

1234567891011121314151617181920212223242526
  1. using System.Collections.Generic;
  2. using System.ComponentModel;
  3. namespace Avalonia.Base.UnitTests.Collections
  4. {
  5. internal class PropertyChangedTracker
  6. {
  7. public PropertyChangedTracker(INotifyPropertyChanged obj)
  8. {
  9. Names = [];
  10. obj.PropertyChanged += PropertyChanged;
  11. }
  12. public List<string?> Names { get; }
  13. public void Reset()
  14. {
  15. Names.Clear();
  16. }
  17. private void PropertyChanged(object? sender, PropertyChangedEventArgs e)
  18. {
  19. Names.Add(e.PropertyName);
  20. }
  21. }
  22. }