Я пишу приложение С# Windows Forms в Visual Studio 2008. У меня есть DataGridView с большим количеством данных. Сначала я хотел бы заполнить только 10 000 строк и добавить больше только тогда, когда пользователь прокручивает страницу вниз. Я обрабатываю событие Scroll DataGridView, но оно никогда не возникает, когда для свойства ScrollEventArgs.Type установлено значение Last, что является условием, которое, как мне кажется, мне нужно поймать, чтобы добавить больше строк. Я читал о людях, имеющих плохой опыт работы с событием DataGridView.Scroll (например, событие DataGridView Scroll ( и ScrollEventType.EndScroll)), но предоставленное решение (Как я могу получать события прокрутки типа полосы прокрутки из DataGridView?) только добавляет свойство ScrollEventArgs.Type, которое возвращается как EndScroll, а не Last, как я нужно. Кто-нибудь знает, как правильно поднять событие или другой способ выполнить эту задачу?
Как определить, когда пользователь прокручивает до конца DataGridView?
Ответы (1)
Я бы использовал виртуальный режим DataGridView (пошаговое руководство Microsoft по виртуальному режиму), который предназначен для обработки очень больших наборов данных. В виртуальном режиме вы можете поймать событие CellValueNeeded
. Когда DataGridViewCellValueEventArgs.RowIndex
равно 10 000, вы можете добавить в таблицу больше строк.
person
Daniel Stutzbach
schedule
26.03.2010