В дополнение к вчерашнему посту «Как корректно обновить DataGridView: курсор перескакивает на первую строку первого столбца», нашел тут решение, как найти видимые в DataGridView строки.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
public void GetVisibleCells(DataGridView dgv) { var vivibleRowsCount = dgv.DisplayedRowCount(true); var firstDisplayedRowIndex = dgv.FirstDisplayedCell.RowIndex; var lastvibileRowIndex = (firstDisplayedRowIndex + vivibleRowsCount) - 1; for (int rowIndex = firstDisplayedRowIndex; rowIndex <= lastvibileRowIndex; rowIndex++) { var cells = dgv.Rows[rowIndex].Cells; foreach (DataGridViewCell cell in cells) { if (cell.Displayed) { // This cell is visible... // Your code goes here... } } } } |