установить последний ряд таблицы данных не сортируемый (всегда внизу) - PullRequest
3 голосов
/ 02 сентября 2010

У меня есть сортируемый DatagridView с итоговой последней строкой, содержащей сумму некоторых столбцов, я хочу сохранить эту итоговую строку всегда в качестве последней строки (внизу) datagridView.

В тот момент, когда я сортирую столбец datagridView и сортируется итоговая строка, я этого не хочу. Я хочу, чтобы последняя строка (итоговая строка) DatagridView не сортировалась.

Есть ли способ сделать это?

Я нашел решение:

Я перегрузил метод sortcompare следующим образом:

  private void grid_SortCompare(object sender, DataGridViewSortCompareEventArgs e)
    {
        try
        {
            if (e.RowIndex1 == this.dataGridView1.Rows.Count -1)
                e.Handled = true;
            if (e.RowIndex2 == this.dataGridView1.Rows.Count - 1)
                e.Handled = true;
            return;
        }
        catch (Exception ex)
        {
            ex.ToString();
        }
    }

1 Ответ

1 голос
/ 02 сентября 2010

Вы можете добавить столбец в таблицу данных и установить значение для всех не сводных записей равным 0. Установите значение итоговой записи равным 1, затем выполните сортировку по столбцу «сводка», а затем по другим.

Это может плохо работать в памяти, поэтому вы можете сделать это в запросе SQL, если это возможно, в зависимости от базы данных, которую вы используете.

...