internal void ReConnect(object source) { for (PropertyPathStep i = this.first; i != null; i = i.NextStep) { i.ReConnect(source); source = i.Value; } }
internal void RaisePropertyPathStepChanged(PropertyPathStep source) { PropertyPathStep nextStep = source.NextStep; object value = source.Value; while (nextStep != null) { nextStep.ReConnect(value); value = nextStep.Value; nextStep = nextStep.NextStep; } if (this.PropertyPathChanged != null) { this.PropertyPathChanged(this, new PropertyPathChangedEventArgs(source)); } }