nature_net.configurations.SortItemGenericList C# (CSharp) Метод

SortItemGenericList() публичный статический Метод

public static SortItemGenericList ( System _list, bool atoz, bool top, bool recent, int len_number_prefix, int len_date_prefix, bool asc, bool consider_first_item ) : void
_list System
atoz bool
top bool
recent bool
len_number_prefix int
len_date_prefix int
asc bool
consider_first_item bool
Результат void
        public static void SortItemGenericList(System.Windows.Controls.ItemCollection _list, bool atoz, bool top, bool recent, int len_number_prefix, int len_date_prefix, bool asc, bool consider_first_item)
        {
            List<nature_net.user_controls.item_generic_v2> new_list = new List<user_controls.item_generic_v2>();
            int init = 0; int j = 0;
            if (!consider_first_item)
            {
                init = 1;
                new_list.Add((nature_net.user_controls.item_generic_v2)_list[0]);
                j=1;
            }
            int i = init;
            new_list.Add((nature_net.user_controls.item_generic_v2)_list[j]); j++;
            for (; j < _list.Count; j++)
            {
                nature_net.user_controls.item_generic_v2 current = (nature_net.user_controls.item_generic_v2)_list[j];
                i = init;
                while (i < new_list.Count && IsFirstItemGreaterThanSecond(current, (nature_net.user_controls.item_generic_v2)new_list[i], atoz, top, recent, len_number_prefix, len_date_prefix, !asc))
                    i++;
                if (i < new_list.Count)
                    new_list.Insert(i, current);
                else
                    new_list.Add(current);
            }
            _list.Clear();
            foreach (object o in new_list)
                _list.Add(o);

            //for (int i = init; i < _list.Count; i++)
            //    for (int j = i + 1; j < _list.Count; j++)
            //        if (IsFirstItemGreaterThanSecond((nature_net.user_controls.item_generic)_list[j], (nature_net.user_controls.item_generic)_list[i], atoz, top, recent, len_number_prefix, len_date_prefix, asc))
            //        {
            //            nature_net.user_controls.item_generic item1 = ((nature_net.user_controls.item_generic)_list[i]).get_clone();
            //            nature_net.user_controls.item_generic item2 = ((nature_net.user_controls.item_generic)_list[j]).get_clone();
            //            _list.Remove(_list[i]);
            //            _list.Insert(i, item2);
            //            _list.Remove(_list[j]);
            //            _list.Insert(j, item1);
            //            //nature_net.user_controls.item_generic item1 = ((nature_net.user_controls.item_generic)_list[i]);
            //            //nature_net.user_controls.item_generic item2 = ((nature_net.user_controls.item_generic)_list[j]).get_clone();
            //            //_list[i] = _list[j];
            //            //_list[j] = item1;
            //            //_list.Remove(_list[i]);
            //            //_list.Insert(i, item2);
            //            //_list.Remove(_list[j]);
            //            //_list.Insert(j, item1);
            //        }
        }