private void OnTrackedItemChanged(object sender, PropertyChangedEventArgs e) { if (e.IsMatch(this.getter.Property)) { var item = (TItem)sender; this.OnTrackedItemChanged( item, sender, e, SourceAndValue.Create( (INotifyPropertyChanged)sender, this.getter.GetMaybe(item))); } }
private void SignalInitial(TItem item) { if (!this.HasSubscribers) { return; } this.OnTrackedItemChanged( item, item, CachedEventArgs.GetOrCreatePropertyChangedEventArgs(string.Empty), SourceAndValue.Create( (INotifyPropertyChanged)item, this.getter.GetMaybe(item))); }
private void OnTrackedPropertyChanged(IPropertyTracker tracker, object sender, PropertyChangedEventArgs e, SourceAndValue <INotifyPropertyChanged, TValue> sourceandvalue) { this.TrackedPropertyChanged?.Invoke(tracker, sender, e, sourceandvalue); }
private void OnTrackedItemChanged(IPropertyTracker tracker, object sender, PropertyChangedEventArgs e, SourceAndValue <INotifyPropertyChanged, TProperty> sourceAndValue) { this.OnTrackedItemChanged( ((PropertyPathTracker <TItem, TProperty>)tracker.PathTracker).Source, sender, e, sourceAndValue); }
protected void OnTrackedItemChanged(TItem item, object sender, PropertyChangedEventArgs e, SourceAndValue <INotifyPropertyChanged, TProperty> sourceAndValue) { this.TrackedItemChanged?.Invoke(item, sender, e, sourceAndValue); }