private void Items_CollectionChanged(object sender, NotifyCollectionChangedEventArgs e) { // update .NET Core section first, copy into here switch (e.Action) { case NotifyCollectionChangedAction.Add: break; case NotifyCollectionChangedAction.Remove: if (e.OldItems != null) { foreach (TabItem ti in e.OldItems) { if (ti != null) { TabClosed?.Invoke(this, new TabItemChangeEventArgs(ti)); } } } break; case NotifyCollectionChangedAction.Replace: if (e.OldItems != null) { foreach (TabItem ti in e.OldItems) { if (ti != null) { TabClosed?.Invoke(this, new TabItemChangeEventArgs(ti)); } } } break; case NotifyCollectionChangedAction.Move: break; case NotifyCollectionChangedAction.Reset: TabsCleared?.Invoke(this, EventArgs.Empty); break; default: break; } #endif LoadTemplateItems(); CheckScrolling(); }
private void Items_CollectionChanged(object?sender, NotifyCollectionChangedEventArgs e) { switch (e.Action) { case NotifyCollectionChangedAction.Add: break; case NotifyCollectionChangedAction.Remove: if (e.OldItems != null) { foreach (TabItem?ti in e.OldItems) { if (ti != null) { TabClosed?.Invoke(this, new TabItemChangeEventArgs(ti)); } } } break; case NotifyCollectionChangedAction.Replace: if (e.OldItems != null) { foreach (TabItem?ti in e.OldItems) { if (ti != null) { TabClosed?.Invoke(this, new TabItemChangeEventArgs(ti)); } } } break; case NotifyCollectionChangedAction.Move: break; case NotifyCollectionChangedAction.Reset: TabsCleared?.Invoke(this, EventArgs.Empty); break; default: break; }