public ObjectWatcher(BindingNode <TParent, TNode> bindingNode, BindingMap map) { _bindingNode = bindingNode; _map = map; if (bindingNode.CollectionNode != null) { _collectionWatcher = bindingNode.CollectionNode.CreateWatcher(map); } _subWatchers = bindingNode.SubNodes?.ToReadOnlyDictionary2(x => x.Key, x => x.Value.CreateWatcher(map)); _handler = _subWatchers == null ? TerminalTargetPropertyChanged : new PropertyChangedEventHandler(TargetPropertyChanged); }
public IObjectWatcher <TCollection> CreateWatcher(BindingMap map) { return(new CollectionWatcher <TCollection, TItem>(this, map)); }
public CollectionWatcher(CollectionBindingNode <TCollection, TItem> node, BindingMap map) { _node = node; _map = map; }
public IObjectWatcher <TParent> CreateWatcher(BindingMap map) { return(new ObjectWatcher <TParent, TNode>(this, map)); }