|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
09.07.2014, 17:28 | #1 |
Форумчанин
Регистрация: 17.11.2009
Сообщений: 108
|
Сортировка DataGridView
Добрый день.
Возникли проблемы с пониманием сортировки DataGridView. Вычитал с msdn следующие вещи: 1) Программная сортировка "Если элемент управления DataGridView связан с внешним источником данных путем задания свойства DataSource, перегрузка метода Sort(DataGridViewColumn,ListSortDir ection) не работает для несвязанных столбцов. Кроме того, если свойство VirtualMode имеет значение true, вызов этой перегрузки возможен только для связанных столбцов. Определить, является ли столбец связанным, можно исходя из значения свойства IsDataBound. Сортировка несвязанных столбцов в связанном режиме не поддерживается." 2) Пользовательская сортировка "Перегрузка метода Sort(IComparer) работает, только если элемент управления DataGridView не связан с внешним источником данных, а свойство VirtualMode имеет значение false. Для настройки сортировки для столбцов, связанных с внешним источником данных, следует воспользоваться операциями сортировки, которые поддерживаются этим источником данных. В виртуальном режиме операции сортировки для несвязанных столбцов необходимо обеспечить самостоятельно." Что имеется: DataGridView, для которой настроен источник данных. Что нужно: Отсортировать один из столбцов в нужном мне порядке (в ячейках смешанный тип данных, например "строка + число"). Я так понимаю, что поставленную мною цель достичь невозможно, так как моя сортировка относится к пользовательской, но и в то же время есть связь с источником данных? Как тогда быть? |
11.07.2014, 08:42 | #2 |
Форумчанин
Регистрация: 17.11.2009
Сообщений: 108
|
Делаю так:
Код:
Сортирует как надо, но к моему гриду прикручен комбобокс с выпадающими фильтрами. И после сортировки вся фильтрация слетает из-за перепривязки отсортированного источника (без перепривязки не сортируется). Можно ли как-то избежать данной перепривязки? |
11.07.2014, 09:13 | #3 |
Подтвердите свой е-майл
Регистрация: 29.08.2012
Сообщений: 4,011
|
В вашем случае нет.
|
11.07.2014, 10:10 | #4 |
Форумчанин
Регистрация: 17.11.2009
Сообщений: 108
|
Можно - повторным переналожением предыдущего фильтра.
|
11.07.2014, 10:31 | #5 |
Подтвердите свой е-майл
Регистрация: 29.08.2012
Сообщений: 4,011
|
как "переналожение" коррелирует с вопросом "Можно ли как-то избежать данной перепривязки? " ?
|
11.07.2014, 10:39 | #6 |
Форумчанин
Регистрация: 17.11.2009
Сообщений: 108
|
Да, зависимости нет.
Но я и не исключал вариантов решения, когда перепривязку можно оставить. |
11.07.2014, 10:42 | #7 |
Подтвердите свой е-майл
Регистрация: 29.08.2012
Сообщений: 4,011
|
ну вот то что вам я и сказал сразу, что раз у вас так то иначе никак
и эта - вот сие var bindingSource = new BindingSource(); постояннор делать нужды нет собственно и сам BindingSource тут нужен ли.. Последний раз редактировалось eval; 11.07.2014 в 10:45. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Быстрая сортировка(сортировка Хоара). Сортировка фрагмента массива [C++] | druger | Помощь студентам | 0 | 20.04.2012 15:49 |
Сортировка данных в dataGridView | energet | Visual C++ | 0 | 11.01.2012 13:23 |
Сортировка по нескольким столбцам datagridview | zakaev | C# (си шарп) | 0 | 18.10.2011 22:03 |
DataGridView | Ramirag | C# (си шарп) | 0 | 14.08.2011 11:57 |
c# + datagridview | MAcK | Общие вопросы .NET | 2 | 06.06.2008 15:57 |