public static IDisposable OneWayBind <TType, TProperty>(this TType type, Expression <Func <TType, Action <TProperty> > > selector, IObservable <TProperty> observable) { return(observable.ObserveOnUIDispatcher() .Subscribe(x => { AccessorCache <TType> .LookupMethod(selector).Invoke(type).Invoke(x); })); }