private void pokemonListViewItemSorter(int subItemsColumn) { ItemComparer sorter = pokemonListView.ListViewItemSorter as ItemComparer; if (sorter == null) { sorter = new ItemComparer(subItemsColumn); // Bug fix for IV (Occurs when Sort IV is selected first, as it should Descend) if (subItemsColumn == 3) { sorter.Order = SortOrder.Ascending; } pokemonListView.ListViewItemSorter = sorter; } // If clicked column is already the column that is being sorted if (subItemsColumn == sorter.Column) { // Reverse the current sort direction if (sorter.Order == SortOrder.Ascending) { sorter.Order = SortOrder.Descending; } else { sorter.Order = SortOrder.Ascending; } } else { // Set the column number that is to be sorted. sorter.Column = subItemsColumn; // Default Sort Order for Cp if (subItemsColumn == 2) { sorter.Order = SortOrder.Descending; } // Default Sort Order for IV else if (subItemsColumn == 3) { sorter.Order = SortOrder.Descending; } // Default Sort Order for Name else if (subItemsColumn == 1) { sorter.Order = SortOrder.Ascending; } } pokemonListView.Sort(); }
private void pokemonListViewItemSorter(int subItemsColumn) { ItemComparer sorter = pokemonListView.ListViewItemSorter as ItemComparer; if (sorter == null) { sorter = new ItemComparer(subItemsColumn); // Bug fix for IV (Occurs when Sort IV is selected first, as it should Descend) if (subItemsColumn == 3) sorter.Order = SortOrder.Ascending; pokemonListView.ListViewItemSorter = sorter; } // If clicked column is already the column that is being sorted if (subItemsColumn == sorter.Column) { // Reverse the current sort direction if (sorter.Order == SortOrder.Ascending) sorter.Order = SortOrder.Descending; else sorter.Order = SortOrder.Ascending; } else { // Set the column number that is to be sorted. sorter.Column = subItemsColumn; // Default Sort Order for Cp if (subItemsColumn == 2) sorter.Order = SortOrder.Descending; // Default Sort Order for IV else if (subItemsColumn == 3) sorter.Order = SortOrder.Descending; // Default Sort Order for Name else if (subItemsColumn == 1) sorter.Order = SortOrder.Ascending; } pokemonListView.Sort(); }