main
1using System;
2using System.ComponentModel;
3using System.Linq.Expressions;
4using gorilla.commons.utility;
5
6namespace presentation.windows
7{
8 public abstract class Observable<T> : INotifyPropertyChanged
9 {
10 public event PropertyChangedEventHandler PropertyChanged = (o, e) => {};
11
12 protected void update(params Expression<Func<T, object>>[] properties)
13 {
14 properties.each(x =>
15 {
16 PropertyChanged(this, new PropertyChangedEventArgs(x.pick_property().Name));
17 });
18 }
19 }
20}