Advertisement
Guest User

Untitled

a guest
Nov 20th, 2015
164
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.02 KB | None | 0 0
  1.     class Test : INotifyPropertyChanged
  2.     {
  3.         int p;
  4.         public int P
  5.         {
  6.             get { return p; }
  7.             set { if (p == value) return; p = value; NotifyPropertyChanged(); }
  8.         }
  9.  
  10.         void NotifyPropertyChanged([CallerMemberName] string propertyName = null)
  11.         {
  12.             if (PropertyChangedInternal != null)
  13.                 PropertyChangedInternal(this, new PropertyChangedEventArgs(propertyName));
  14.         }
  15.  
  16.         private event PropertyChangedEventHandler PropertyChangedInternal;
  17.  
  18.         public event PropertyChangedEventHandler PropertyChanged
  19.         {
  20.             add
  21.             {
  22.                 WeakEventManager<Test, PropertyChangedEventArgs>.AddHandler(this, "PropertyChangedInternal", (sender, args) => value(sender, args));
  23.             }
  24.             remove
  25.             {
  26.                 WeakEventManager<Test, PropertyChangedEventArgs>.RemoveHandler(this, "PropertyChangedInternal", (sender, args) => value(sender, args));
  27.             }
  28.         }
  29.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement