Упорядочение столбцов в DataGridView по алфавиту

Я использую элемент управления DataGridView в приложении VB.Net, где столбцы динамически добавляются в DataTable, который создается в коде. Мне нужно заказать некоторые столбцы в алфавитном порядке по имени.

Например

Имя, фамилия, номер дома, B, D, A, C

Мне нужно как...

Имя, фамилия, номер дома, A, B, C, D

столбцы такие, какие нужны, поэтому я не могу заказать их раньше.

1 ответ

Решение

Это не VB.NET, но этот вопрос в C# должен иметь нужный вам ответ: Как отсортировать заголовки столбцов в сетке данных по алфавиту

DisplayIndex это ключ.

Если вы не хотите использовать Linq, вы можете реализовать код для выполнения следующих действий:

  1. Создать временный список для хранения столбцов
  2. Сохраните временную копию вашего DataGridView
  3. Удалить все столбцы из DataGridView
  4. Сортируйте столбцы вручную, игнорируя первые несколько, которые вы не хотите сортировать
  5. Добавьте столбцы обратно в DataGridView в правильном порядке, используя DisplayIndex.

Здесь также возникает вопрос о том, как изменить порядок или индекс столбцов таблицы данных.

Другие вопросы по тегам