¿Cómo se desplaza mediante programación un control de vista de cuadrícula de datos de winforms?

Estoy implementando algunas funciones de arrastrar y soltar en uno que mis controles heredan de una vista de cuadrícula de datos. Básicamente, estoy arrastrando una fila desde algún lugar en el DGV y soltándola en otro lugar, reordenando las filas. Sin embargo, me he encontrado con un problema. Si el DGV es demasiado grande para que haya una barra de desplazamiento, ¿cómo puedo hacer que el DGV se desplace hacia arriba o hacia abajo mientras el usuario está en medio de un arrastre?

Sé cómo obtener la posición actual del mouse y también obtener la posición del rectángulo dgv y tal. Entonces, puedo averiguar fácilmente si estoy en la mitad superior o inferior del rectángulo ... Solo necesito una forma de desplazar programáticamente el dgv. Preferiría si no tengo que seguir cambiando la celda seleccionada para hacer esto.

¿Alguna sugerencia?

Gracias

Isaac

Respuestas a la pregunta(5)

Su respuesta a la pregunta