Esempio n. 1
0
        public async Task Start(SortingMethod method, SortTargetKind target)
        {
            var vm = (MainWindowViewModel)DataContext;

            vm.Method     = method;
            vm.TargetKind = target;
            await vm.Sort();
        }
Esempio n. 2
0
        public async Task Sort(SortTargetKind kind)
        {
            Reporter.SortingMethod = Method;
            var          method = typeof(Sorter).GetMethod(Enum.GetName(typeof(SortingMethod), Method) + "Sort");
            SortedObject obj;

            if (kind == SortTargetKind.Random)
            {
                obj = new SortedObject(Reporter, Enumerable.Range(1, 50).OrderBy(x => random.Next()));
            }
            else if (kind == SortTargetKind.Ascending)
            {
                obj = new SortedObject(Reporter, Enumerable.Range(1, 50));
            }
            else
            {
                obj = new SortedObject(Reporter, Enumerable.Range(1, 50).Reverse());
            }
            await(Task) method.Invoke(null, new object[] { obj });
        }