Сортировка моего datagridview по двум столбцам

#visual-studio #visual-studio-2008 #visual-studio-2010

#visual-studio #visual-studio-2008 #visual-studio-2010

Вопрос:

Я искал, но не смог найти способ на языке visual Basic 2010. У меня есть datagridview с именем ogretmenlerdatagridview. Я пытаюсь ОТСОРТИРОВАТЬ Datagridview (несвязанный) по двум столбцам. Например:

Его нужно отсортировать по столбцу 1. затем по столбцу 2.

столбец 1 столбец 2

4—————Selim
1—————Mehmet
3—————Dilek
4—————Ali
2—————Ziya
3—————Mesut
3—————Eren
5—————Turkan
2 ————-Fatma

Таким образом, сортировка должна привести к следующему:

столбец 1 столбец 2

1————— Мехмет
2————— Fatma
2————— Зия
3————— Дилек
3————— Эрен
3————— Месут
4————— Али
4————— Селим
5 ————- Turkan

я использую этот код `OgretmenlerDataGridView.Sort(ОгретьменлеРдатАгриДвью.Столбцы (0), система.ComponentModel.ListSortDirection.По возрастанию)

OgretmenlerDataGridView.Sort(OgretmenlerDataGridView.Столбцы (1), система.ComponentModel.ListSortDirection.По возрастанию)`

Это не работает. Я искал везде, есть много знаний, но я не смог выполнить ни одно из них. Не могли бы вы, пожалуйста, мне помочь…

Ответ №1:

Из того, что я могу найти, я думаю, вам придется сделать это вручную. Я знаю, что если у вас есть коллекция элементов, вы можете использовать LINQ для выполнения сортировки следующим образом. В этом случае вы бы сортировали по имени, затем по фамилии. Существуют также методы для сортировки в порядке убывания. Но опять же, я не думаю, что вы можете сделать это, используя метод сортировки DataGridView. Я думаю, что это допускает только один столбец.

     myData.OrderBy(i=>i.FirstName).ThenBy(i=>LastName);
  

Комментарии:

1. Спасибо… Я превратил datagridview в привязанный и запустил его с помощью OgretmenlerBindingSource. Sort = «Column1, Column2» теперь это работает.