1 / 1 / 1
Регистрация: 29.05.2015
Сообщений: 13
|
|
1 | |
DataGridView + Scrolling = ошибка29.08.2015, 17:12. Показов 1593. Ответов 3
Метки нет (Все метки)
Добрый день. Который день не могу победить ошибку. Суть в следующем.
Имеется DataGridView. В него из другого потока периодически добавляются строки. Чтобы были видны новые строки, я делаю DataGridView.Refresh(). Так как строк много (порядка 10000) приходится их иногда скролить вверх-вниз, чтобы посмотреть нужные. Вот в этот момент и вылетает общая ошибка и окно закрывается. Судя по описанию ошибки, происходит конфликт, когда WinForms отрисовывает и обрабатывает скроллинг и в этот момент добавляются новые строчки в DataGridView(он ругается на неизвестные индексы вне диапазона, а когда я смотрел стек методов при обработке исключения, наверху оказывался метод со ScrollBar'ом) . Если таблицу не скролить, то ошибок не возникает, правда и новых строк не видать. Что тут можно сделать, чтобы работа программы была стабильная?
0
|
29.08.2015, 17:12 | |
Ответы с готовыми решениями:
3
Не могу вывести в фрейм (<frame src='search.html' scrolling='auto'> <frame name='main' src='result.html' scrolling='auto'>) 3D scrolling Scrolling UI Menu Lazy infinite scrolling |
29.08.2015, 19:42 | 2 |
Сообщение было отмечено юный_падаван как решение
Решение
1) Вы используете Invoke для добавления записей?
2) Используйте виртуальный режим DataGridView.VirtualMode для отображения записей и свойство RowCount для настройки их числа.
0
|
8941 / 4853 / 1886
Регистрация: 11.02.2013
Сообщений: 10,246
|
||||||
29.08.2015, 20:06 | 3 | |||||
Как костыль предложу выделять последнюю строку при обновлении:
1
|
1 / 1 / 1
Регистрация: 29.05.2015
Сообщений: 13
|
|
29.08.2015, 20:40 [ТС] | 4 |
Storm23, спасибо огромное! Только прочитав твое сообщение, я понял свою ошибку - надо сделать через Invoke добавление строк, чтобы и DGV и DataTable были в одном потоке.
Заработало, и не глючит!
0
|
29.08.2015, 20:40 | |
29.08.2015, 20:40 | |
Помогаю со студенческими работами здесь
4
Управление Scrolling-ом в MSFlexGrid? Scrolling в многострочном textboxe Изображения в Scrolling Activity Отмена scrolling-a одной страницы Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |