/// <summary> /// Registers the specified property as a source for the target property currently being tracked. If no target property is currently being tracked, then this method does nothing. /// </summary> /// <param name="sourceProperty">The source property.</param> public void Register(ISourceProperty sourceProperty) { var currentFrame = _stack.Peek(); if (currentFrame == null) { return; } currentFrame.Register(sourceProperty); }
public void Register(ISourceProperty source) { if (_sourcesToRemove.Remove(source)) { return; } if (_sourcesToAdd == null) { _sourcesToAdd = new HashSet <ISourceProperty>(); } _sourcesToAdd.Add(source); source.AddTarget(_targetProperty); }
public virtual void RemoveProperty(ISourceProperty property) { properties.Remove(property); OnPropertyChanged("Properties"); }
public virtual void AddProperty(ISourceProperty property) { properties.Add(property); OnPropertyChanged("Properties"); }