DataGridView CellPainting не полностью работает на прокрутке
Первый пост, но долгое время браузер :)
Итак, вот моя проблема: в основном у меня есть сетевое представление данных, которое я использую для взаимодействия с пользователем. Во всех строках есть & quot; информация & quot; кнопка, которая создаст иллюзию, что она добавляет еще одну строку под ней со всеми объединенными ячейками (одна длинная ячейка по всей строке) и рисует текст и изображения, описывающие строку над ней, в «информационную ячейку».
Это прекрасно работает, за исключением случаев, когда представление сетки данных прокручивается по вертикали, тогда кажется, что рисование не вызывается, и сетка выглядит испорченной. Есть идеи?
Вот основная схема кода:
private void grid_CellPainting(object sender, DataGridViewCellPaintingEventArgs e){
// Loop through and draw all of the open information rows
foreach (int i in openInfoCells) {
if (i >= grid.FirstDisplayedCell.RowIndex &&
i <= (grid.DisplayedRowCount(true) + grid.FirstDisplayedCell.RowIndex)) {
// Draw Rectangle
....
// Draw Text or Image
....
}
}
}