2012-02-09 8 views
-1

Я использую следующий фрагмент кода для сортировки datagridview с помощью sortOption, который выбирается из выпадающего меню - крайнего срока или приоритета.Пользовательская сортировка datagridview

У меня есть вариант крайнего срока работы. Тем не менее, я думаю, что приоритетный вариант просто сортирует его абажустически в данный момент, но я хочу, чтобы строки с высоким приоритетом отображались первыми, затем средними, затем низкими в TaskTable (datagridview)

Любые идеи, пожалуйста?

private void sortButton_Click(object sender, EventArgs e) 
    { 
     string sortOption; // selected sorting method 

      sortOption = sortComboBox.Text; 

      switch (sortOption) 
      { 
       case "Deadline": 
        TaskTable.Sort(TaskTable.Columns["Deadline"], 
        System.ComponentModel.ListSortDirection.Ascending); // sort by deadline, nearest first. 
        break; 
       case "Priority": 
        TaskTable.Sort(TaskTable.Columns["Priority"], 
        System.ComponentModel.ListSortDirection.Ascending); // sort by priority - high, medium, low 

        break; 
+0

DataGridView - это winforms NOT WPF –

ответ

1

Вы можете добавить дополнительную строку для каждого типа, например 1, 2, 3, и отсортировать ее по этой строке (скрытая строка). Механически присваивать номер каждому типу и сортировать, используя это целое число.

0

Значения приоритета, которые вы определили, являются «высокими», «средними» и «низкими»? Если это так, вы должны определить хеш-таблицу, новую структуру или что-то подобное, чтобы пользователи могли отнимать такие значения, как «высокий», «средний» и т. Д., Но чтобы убедиться, что она правильно отсортирована (в алфавитном порядке, т.е. в зависимости от фактического гексагона стоимость).

высоких 1 среды 2 низких 3

Дополнительных строк будут получить работу, тоже, но я не думаю, что это лучший вариант. Вы должны инкапсулировать фактическое значение и соответствующие им ключи. На всякий случай, если изменения будут изменены, вам будет намного легче их сопоставить.

0

Если это действительно WPF, не сортировки DataGrid, но сортировать привязываться данные, которые, как правило, гораздо легче достичь.

Смежные вопросы