public ObservableReversablePropertyMemberBinding(INotifyExpression <T> target, string memberName, Func <T, TMember> memberGet, Action <T, TMember> memberSet, INotifyReversableExpression <TMember> value) { if (value == null) { throw new ArgumentNullException("value"); } if (memberName == null) { throw new ArgumentNullException("memberName"); } if (memberGet == null) { throw new ArgumentNullException("memberGet"); } if (memberSet == null) { throw new ArgumentNullException("memberSet"); } if (target == null) { throw new ArgumentNullException("target"); } Value = value; MemberName = memberName; MemberGet = memberGet; MemberSet = memberSet; Target = target; listener = new PropertyChangeListener(this); }
public ObservableMemberExpression(INotifyExpression <TTarget> target, string memberName, Func <TTarget, TMember> memberGet) { if (memberGet == null) { throw new ArgumentNullException("memberGet"); } if (memberName == null) { throw new ArgumentNullException("memberName"); } Target = target; MemberGet = memberGet; MemberName = memberName; listener = new PropertyChangeListener(this); }
public Entry() { listener = new PropertyChangeListener(this); Successors.Attached += (obj, e) => listener.Subscribe(this, "Value"); Successors.Detached += (obj, e) => listener.Unsubscribe(); }