En Windows Form, tengo un control DataGridView
con registros llenados por una fuente de datos (enlace de datos). Cada registro presenta un objeto de datos.El control DataGridView se desplaza hacia arriba cuando una propiedad cambió
No se muestran todas las filas: solo las 10 primeras por ejemplo. Entonces el usuario puede desplazarse hacia abajo para ver los otros registros. Nada especial sobre esto.
Pero cuando un usuario hace clic en una fila después de desplazarse, una propiedad del objeto de datos de la fila está cambiando y esto refresca la DataGridViewand
- IT "se desplaza" a la parte superior de la cuadrícula de datos (tal vez todo el DataGridView
es refrescante). Esto no es deseable.
¿Cómo puedo mantener la posición de desplazamiento actual durante una actualización de registro?
Hola Jay. Esto funciona. Gracias por el consejo. – robertpnl
Tuve el mismo problema. Descubrí que es la llamada a AcceptChanges() en mi DataSource lo que lo hace, así que lo solucioné guardando el valor de FirstDisplayedScrollingRowIndex antes de la llamada y restaurándolo después. – JonP