#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» теперь это работает.