public override void Sort()
        {
            BindingListImpl.EndNew();

            if (!BindingListImpl.IsSorted)
            {
                List.Sort();

                if (List.Count > 1)
                {
                    OnResetList();
                }
            }
            else
            {
                if (BindingListImpl.SortProperty != null)
                {
                    BindingListImpl.ApplySort(BindingListImpl.SortProperty, BindingListImpl.SortDirection);
                }
                else if (BindingListImpl.SortDescriptions != null)
                {
                    BindingListImpl.ApplySort(BindingListImpl.SortDescriptions);
                }
                else
                {
                    throw new InvalidOperationException("Currently applied sort method is not recognized/supported by EditableArrayList.");
                }
            }
        }
 public void ApplySort(ListSortDescriptionCollection sorts)
 {
     BindingListImpl.ApplySort(sorts);
 }
 public void ApplySort(PropertyDescriptor property, ListSortDirection direction)
 {
     BindingListImpl.ApplySort(property, direction);
 }