Exemple #1
0
 private void InitializeFirstOrLast(ArrayChengedAction action, T changedItems)
 {
     if (action == ArrayChengedAction.First)
     {
         InitializeFirst(action, changedItems);
     }
     else
     {
         InitializeLast(action, changedItems);
     }
 }
Exemple #2
0
 private void InitializeAddOrRemove(ArrayChengedAction action, T changedItems)
 {
     if (action == ArrayChengedAction.Add)
     {
         InitializeAdd(action, changedItems);
     }
     else
     {
         InitializeRemove(action, changedItems);
     }
 }
Exemple #3
0
 public ArrayChangedEvent(ArrayChengedAction action)
 {
     try
     {
         if (action != ArrayChengedAction.Add && action != ArrayChengedAction.Remove &&
             action != ArrayChengedAction.Clear && action != ArrayChengedAction.First &&
             action != ArrayChengedAction.Last)
         {
             throw new ArgumentException();
         }
     }
     catch (ArgumentException e)
     {
         Console.WriteLine($"Error: {e.Message}");
     }
 }
Exemple #4
0
        public ArrayChangedEvent(ArrayChengedAction action, T changedItem)
        {
            try
            {
                if (action != ArrayChengedAction.Add && action != ArrayChengedAction.Remove &&
                    action != ArrayChengedAction.Clear && action != ArrayChengedAction.First &&
                    action != ArrayChengedAction.Last)
                {
                    throw new ArgumentException();
                }

                if (action == ArrayChengedAction.Clear)
                {
                    if (changedItem != null)
                    {
                        throw new ArgumentException();
                    }

                    InitializeAdd(action, default(T));
                }
                else
                {
                    if (action == ArrayChengedAction.First || action == ArrayChengedAction.Last)
                    {
                        InitializeFirstOrLast(action, changedItem);
                    }
                    else
                    {
                        InitializeAddOrRemove(action, changedItem);
                    }
                }
            }
            catch (ArgumentException e)
            {
                Console.WriteLine($"Error: {e.Message}");
            }
        }
Exemple #5
0
        private void InitializeLast(ArrayChengedAction action, T Item)
        {
            _action = action;

            data = Item;
        }
Exemple #6
0
        private void InitializeRemove(ArrayChengedAction action, T newItems)
        {
            _action = action;

            data = newItems;
        }