| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > WPF и Silverlight > DataGrid и сортировка в колонке |
| Автор: Человек01 21.2.2009, 11:24 | ||
| Есть DataGrid требуется сделать чтобы при выборе сортировки по любой колонке, сначала производилась сортировка по определенной колонке(например columnstandart), а уже потом по выбранной. Для решения задачи видимо требуется создать свой класс(ExDataGrid) на основе DataGrid и обработать Sorting я сделал так:
Но вот в какую сторону капать дальше? Видимо надо каким то образом создать System.ComponentModel.SortDescription и определить поведение самой колонки colm, но вот как это сделать, что то не соображу. Может кто знает покажите, или пните в нужную сторону. |
| Автор: Человек01 22.2.2009, 08:44 | ||
| Полурешение: Оказалось что это до простого просто. Прицеп такой: после загрузки данных в DataGrid вызываем сортировку по любому столбцу, а далее если пользователь просто щелкает на колонке идет сортировка по заданной нами колонке в данном случае columnstandart. Но вот если он щелкнет с Shift по какой нибудь колонке то получается что наш обработчик пропускает данную обработку и отдает её стандартному обработчику, а тот зная что нажат Shift добавляет сортировку по выбранной колонке как сортировку второго уровня(не знал как выразиться сказал так). Вот
Понятно что данная реализация не идеальна, хотелось бы чтоб при простом нажатии на колонке она обрабатывалась как я спрашивал в первом посте, но для этого надо обработать SortDescriptions и добавлять нужный порядок сортировок, но пока не стал делать т.к. возникла другая проблемка http://forum.vingrad.ru/forum/topic-248696/kw-datagrid.html вот. |