private void ToOrderBills() { try { IOrderedEnumerable <Bill> bills = null; switch (SelectedOrder) { case "Descrição - Crescente": bills = Bills.OrderBy(o => o.Description); break; case "Descrição - Decrescente": bills = Bills.OrderByDescending(o => o.Description); break; default: return; } Bills = new ObservableRangeCollection <Bill>(bills); OnPropertyChanged("Bills"); } catch (Exception) { throw; } }
private void RefreshBillListItems() { switch (_SortOptions.GetLastOption()) { case "Id": if (_SortOptions.GetDescending()) { _DBConnection.Bills = Bills.OrderByDescending(x => x.Id).ToList <DBConnection.Bill>(); } else { _DBConnection.Bills = Bills.OrderBy(x => x.Id).ToList <DBConnection.Bill>(); } break; case "Category": if (_SortOptions.GetDescending()) { _DBConnection.Bills = Bills.OrderByDescending(x => x.Category).ToList <DBConnection.Bill>(); } else { _DBConnection.Bills = Bills.OrderBy(x => x.Category).ToList <DBConnection.Bill>(); } break; case "DueDate": if (_SortOptions.GetDescending()) { _DBConnection.Bills = Bills.OrderByDescending(x => x.DueDate).ToList <DBConnection.Bill>(); } else { _DBConnection.Bills = Bills.OrderBy(x => x.DueDate).ToList <DBConnection.Bill>(); } break; case "ForMonth": if (_SortOptions.GetDescending()) { _DBConnection.Bills = Bills.OrderByDescending(x => x.ForMonth).ToList <DBConnection.Bill>(); } else { _DBConnection.Bills = Bills.OrderBy(x => x.ForMonth).ToList <DBConnection.Bill>(); } break; case "Amount": if (_SortOptions.GetDescending()) { _DBConnection.Bills = Bills.OrderByDescending(x => x.Amount).ToList <DBConnection.Bill>(); } else { _DBConnection.Bills = Bills.OrderBy(x => x.Amount).ToList <DBConnection.Bill>(); } break; case "Paid": if (_SortOptions.GetDescending()) { _DBConnection.Bills = Bills.OrderByDescending(x => x.Paid).ToList <DBConnection.Bill>(); } else { _DBConnection.Bills = Bills.OrderBy(x => x.Paid).ToList <DBConnection.Bill>(); } break; } _DBConnection.ReOrderMonthBills(); Bills.Clear(); MonthBills.Clear(); foreach (DBConnection.Bill bill in _DBConnection.Bills) { Bills.Add(bill); } foreach (DBConnection.Bill bill in _DBConnection.MonthBills) { MonthBills.Add(bill); } }