internal void Internal_OnModelChanged() { // Clear cached data _entries = null; EntriesChanged?.Invoke(this); }
private void updateEntries(params VM[] viewModels) { FastObservableCollection <VM> all = All as FastObservableCollection <VM>; all.SuspendCollectionChangeNotification(); var removeItems = all.Where(vm => !viewModels.Contains(vm)).ToList(); var addItems = viewModels.Where(vm => !all.Contains(vm)).ToList(); if (addItems.Count == 0 && removeItems.Count == 0) { return; //nothing to do here } foreach (var vm in removeItems) { all.Remove(vm); } foreach (var vm in addItems) { all.Add(vm); } _subItemList = all.ToArray().ToList(); all.NotifyChanges(); EntriesChanged?.Invoke(this, EventArgs.Empty); }
private void EntryCollection_CollectionChanged(object sender, NotifyCollectionChangedEventArgs e) => EntriesChanged?.Invoke(this, e);
private void RaiseEntriesChanged(KeyValuePair <string, object>?keyValuePair) { EntriesChanged?.Invoke(this, keyValuePair); }