![]() |
|
Модераторы: gambit, Partizan |
![]()
|
|
| Papirus |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 298 Регистрация: 19.4.2005 Где: Санкт-Петербург Репутация: -1 Всего: 1 |
Собственно идея такая:
- Запоминаем в переменной значение идентификатора - например поля ClientID (CurrencyManager) - после сортировки запускаем цикл который проверяет в какой строке не датасета, а его представления в гриде (ведь записи кроме того что отсортированы могут быть еще и отфильтрованы) теперь находится это значение. - выделяем эту запись. Вот это и делает (должен) этот цикл. На всякий случай Me.dataGrid1.Item(I, 0) - возвращает значение из строки I и первой колонки. Если идентификатор (ClientID) не в первой колонке - подставь другую цифру. |
|||
|
||||
| mr.DUDA |
|
|||
|
3D-маньяк ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8244 Регистрация: 27.7.2003 Где: город-герой Минск Репутация: 24 Всего: 232 |
Господа, давайте юзать нормальные гриды (например DevExpress.XtraGrid), и не будет таких проблем
-------------------- ![]() |
|||
|
||||
| asper |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 41 Регистрация: 10.8.2005 Репутация: нет Всего: нет |
Papirus - а если идентификатор есть только в DataSet, а в DataGrid он не отображается за ненадобностью?
Может быть, можно в DataGrid организовать невидимый стобец? mr.Duda - стандартные гриды по определению должны работать быстрее. |
|||
|
||||
| Papirus |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 298 Регистрация: 19.4.2005 Где: Санкт-Петербург Репутация: -1 Всего: 1 |
Хорошая мысль, имхо, скрыть столбец с идентификатором. Если используешь стиль грида, то добавь этот столбец с идентификатором и поставь его ширину = 0
Вот это точно работает
Добавлено @ 09:41
Возможно. Но я лично не шибко люблю использовать в проге "левые" компоненты, если можно использовать стандартные. Другое дело, если сандартные слишком запарно причесывать под потребность юзеров. Но это мое частное, личное и персональное ИМХО. |
||||
|
|||||
| asper |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 41 Регистрация: 10.8.2005 Репутация: нет Всего: нет |
Papirus - спасибо за помощь. Спасибо за совет с нулевой шириной столбца - очень пригодилось.
И все-таки этот способ позволяет встать на ту строку DataGrid, на которой находился курсор до сортировки. А мне нужно вставать на ту строку, где после сортировки оказалась запись, на которой находлся курсор до сортировки. Лучше чем этот код придумать пока не получается
|
|||
|
||||
| Papirus |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 298 Регистрация: 19.4.2005 Где: Санкт-Петербург Репутация: -1 Всего: 1 |
Если надежно работает, то чего еще нужно...
|
|||
|
||||
| asper |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 41 Регистрация: 10.8.2005 Репутация: нет Всего: нет |
Просто не сразу удалось выйти на это решение. И не совсем понятно, почему Ваш вариант не идет у меня... Впрочем, ладно, проблема решена. У кого возникнет подобная же, тот сможет воспользоваться любым из вариантов (какой больше пойдет) |
|||
|
||||
| Papirus |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 298 Регистрация: 19.4.2005 Где: Санкт-Петербург Репутация: -1 Всего: 1 |
[quote=asper, 25.10.2005, 02:02]И не совсем понятно, почему Ваш вариант не идет у меня... [/quot]
Все просто - он у меня срабатывает в процедуре Click ДО сортировки Ну не досмотрел... |
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Разработка Windows Forms | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |