![]() |
|
Модераторы: gambit |
![]()
|
|
| starostin |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 142 Регистрация: 28.9.2009 Где: Ярославль Репутация: нет Всего: 1 |
может фигово ищу. Хочу сделать что бы datagridview загружал в себя не сразу все записи что есть, а потихоньку, а пользователь в это время мог жамкать остальные элементы, вижу только решения постраничным выходом, но мне кажеться это не красивым способом. Может есть свойство просто у viewa про которое я не знаю ?
|
|||
|
||||
| mrbrooks |
|
|||
![]() трололомен ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 4259 Регистрация: 4.10.2006 Где: Дол Гулдур Репутация: 5 Всего: 306 |
DataGridView.VirtualMode и иже с ним. Однако сама по себе загрузка большого количества данных не очень хорошая идея.
|
|||
|
||||
| Экскалупатор |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1746 Регистрация: 1.4.2009 Где: г. Минск Репутация: 3 Всего: 24 |
тебе надо определиться между "загружать" частично и "отображать" частично. потому как во втором случае загружаться будет все равно все, а в первом будет часто происходить выборка(не знаю откуда ты там выбираешь). можно из параллельного потока делать все, тогда пользователь сможет жать кнопки пока происходит выборка дынных.
|
|||
|
||||
| starostin |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 142 Регистрация: 28.9.2009 Где: Ярославль Репутация: нет Всего: 1 |
Вот мне хотелось бы именно из параллельного потока запускать, только не очень хорошо представляю себе как это выглядитб Дело в том что хочу организовать "живой поиск", то есть моя представляемая схема такая: запускаеться приложение; запускаеться два потока: 1ый) ждёт действия от пользователя, вклячая ожидания события textchanged у одного из textboxов, и передавая из него текст во второй 2ой) загружает и отображает по мере загрузки данных соответствующих введённому тексту. Собсна проблема в том что я не втыкаюсь в параллелизацию, и не понимаю как при дописывании символа в текстбокс остановить 2ой процесс если он идёт, запустить его заново с новым значением.
Ну и ещё один вопрос ламерского содержания, если вы мне подскажите кодом(а я именно на это и надеюсь) придёться ли мне загружать в datagridview каждую строку селектом или есть возможность оставить эту работу тулзам из postgressqldata |
|||
|
||||
| starostin |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 142 Регистрация: 28.9.2009 Где: Ярославль Репутация: нет Всего: 1 |
немного покопав на эту тему нашёл на мсдн, дай бог ему долгих лет жизни, пример http://msdn.microsoft.com/ru-ru/library/ms171624(VS.90).aspx
ничего сложного с первого взгляда, скопипасти, подправь строку конекции и в бой, но почему то в строке
вылезает ошибка "Заданное приведение является недопустимым.". Помимо того что это сообщение на русском, меня крайне беспокоит этот момент. я практически ничего не менял, только изменил запрос, вместо coun(*) оставил тока пару столбцов. Кто нить встречался с этим? |
|||
|
||||
| MasterOfCode |
|
|||
|
elwin ![]() ![]() Профиль Группа: Участник Сообщений: 740 Регистрация: 24.4.2008 Где: World.Russia.Tyum en Репутация: 4 Всего: 27 |
ExecuteScalar вернет тебе из первой строки, значение первой колонки. Если у тебя там символы, а ты его в int пытаешься преобразоваться, то InvalidCastException тебе не избежать. Почитай внимательнее про ExecuteScalar, ExecuteReader в том же MSDN.
А то что ты хочешь организовать с фильтрами, то тут ни какого разбиения на потоки не нужно. Загружай сначала все данные, а потом их фильтруй. Либо жди пока пользователь не укажет какая ему область данных необходима, после производи загрузку. -------------------- ![]() |
|||
|
||||
| starostin |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 142 Регистрация: 28.9.2009 Где: Ярославль Репутация: нет Всего: 1 |
спасибо за подсказку,исправил. щас странная проблема: почему то не отображаеться содержимое яйчеек. выводиться нужное колличество строк и столбцов, но значений нет в них
|
|||
|
||||
| starostin |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 142 Регистрация: 28.9.2009 Где: Ярославль Репутация: нет Всего: 1 |
Это то же решил, всё в моей невнимательности дело. Подскажите, можно ли, указывая селект руками(т.е. не из датасета), скрывать стобец, не вызвав события CellFormatting? Возможно спросите зачем, а возможно я что то делаю не так. Дело в том что я хочу скрыть колонку id, потому что пользователю она не нужна и засаряетрабочее пространство которого и так маловато. а мне надо работать с остальными данными из этой строки, которые не были выбраны селектом из бд, то есть в datagridview их нет. Если есть способы о которых я не знаю плиз подскажите.
|
|||
|
||||
| starostin |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 142 Регистрация: 28.9.2009 Где: Ярославль Репутация: нет Всего: 1 |
Отказался от привязки к cellformating.
Новая проблема. Странное дело, ситуация слегка запутанная, сначала я писал с помощью тулза триального от devart, но его время кончилось, я бросил его и стал конектиться к базе через odbc драйвер, при его использовании кодировка сменилась, теперь это невооброжаемые строки из смеси турецкого и различных символов, которые я бы даже по накурке нарисовать бы не смог. Это наталкивает меня на мысль, что можно с помощью какого то свойства прописать кодировку в которой производить чтение из бд, есть идеи или знания по этому поводу? |
|||
|
||||
| starostin |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 142 Регистрация: 28.9.2009 Где: Ярославль Репутация: нет Всего: 1 |
Поставил свой локальный сервер, новая странная вещь. Когда конекшусь к старому серверу на каких то очень старых фрях, загружаються все данные, а когда конекчюсь к своему локальному, стоящему на винде, отображаеться лишь их малая часть. Кто нить представляет с чем это может связано?
И сразу тут же второй вопрос. Как я уже говорил, для заполнения использую метод взятый с msdn, котоый подгружает базу в фоновом режиме. Как бы мне остановить этот процесс, что бы начать его занаво с другими значениями? |
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, stab, mr.DUDA, Exception. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Базы данных под .NET | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |