private void CollectionChanged(Action <NotifyCollectionChangedEventArgs> callback, SerializableNotifyCollectionChangedEventArgs eventArgs)
        {
            if (OnRunningOperationsCollectionChangedCallback != null)
            {
                NotifyCollectionChangedEventArgs args;

                switch (eventArgs.Action)
                {
                case NotifyCollectionChangedAction.Add:
                    args = new NotifyCollectionChangedEventArgs(NotifyCollectionChangedAction.Add, eventArgs.NewItems, eventArgs.NewStartingIndex);
                    break;

                case NotifyCollectionChangedAction.Remove:
                    args = new NotifyCollectionChangedEventArgs(NotifyCollectionChangedAction.Remove, eventArgs.OldItems, eventArgs.OldStartingIndex);
                    break;

                default:
                    throw new NotImplementedException();
                }

                callback(args);
            }
        }
 public void OnCancelledOperationsCollectionChanged(SerializableNotifyCollectionChangedEventArgs eventArgs)
 {
     CollectionChanged(OnCancelledOperationsCollectionChangedCallback, eventArgs);
 }