0% encontró este documento útil (0 votos)
25 vistas2 páginas

Mover Filas en DataGridView con VB

Este documento describe cómo mover filas hacia arriba y hacia abajo en un DataGridView al hacer clic en botones de una columna de botones. Al hacer clic en el botón de arriba, se elimina la fila actual del DataTable subyacente y se inserta una posición más arriba. Al hacer clic en el botón de abajo, se elimina la fila actual y se inserta una posición más abajo. Esto actualiza el DataGridView para reflejar el movimiento de fila.
Derechos de autor
© Attribution Non-Commercial (BY-NC)
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como TXT, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
25 vistas2 páginas

Mover Filas en DataGridView con VB

Este documento describe cómo mover filas hacia arriba y hacia abajo en un DataGridView al hacer clic en botones de una columna de botones. Al hacer clic en el botón de arriba, se elimina la fila actual del DataTable subyacente y se inserta una posición más arriba. Al hacer clic en el botón de abajo, se elimina la fila actual y se inserta una posición más abajo. Esto actualiza el DataGridView para reflejar el movimiento de fila.
Derechos de autor
© Attribution Non-Commercial (BY-NC)
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como TXT, PDF, TXT o lee en línea desde Scribd

04-321-158264

seleccionar una fila de datagridview [Link](fila_que_queremos_seleccionar).Selected = True [Link] = [Link](fila_que_queremos_seleccionar).Cells(0)

************** [Link]() ********************* mover fila arriba abajo Mover fila en el DataGridView arriba y abajo con botn DataGridViewButtonColumn Problema: Tengo un grid con dos columnas tipo botn, un botn indica subir una fila y el otro botn indica bajar una fila. Debo mover las filas de arriba hacia abajo dependiendo del clic en su respectivo botn. Solucin: Despus de buscar por un buen rato en el internet, no encontr una forma dir ecta, as que tuve que realizar mi propia opcin. Nota: Mi DataGridView est enlazado a un BindingSource el cual est enlazado a un Da taTable (que enredo), lo que significa que los datos iniciales (los que se prese ntan en el grid) son fueron llenados originariamente en el DataTable, por lo que debo modificar directamente el DataTable. La accin de mover no es otra cosa que eliminar la fila actual e insertarla una po sicin arriba o abajo de la que se encontraba originariamente. 'Debo obtener la accin clic de la columna botn Private Sub DataGridView1_CellContentClick(ByVal sender As [Link], ByVal e As [Link]) Handles [Link] ontentClick 'Sirve para obtener el indice de la fila a mover Dim indice As Integer 'Se crea una nueva fila a partir de la DataTable que est enlazada al grid Dim dr As DataRow = [Link]() 'Obtiene la posicion actual de la fila a moverse indice = [Link] 'Pregunto si se dio clic en la columna boton arriba If [Link]([Link]).Name = "arriba" Then 'Se encuentra en la parte superior del grid If indice = 0 Then Exit Sub End If 'Se deben de insertar los datos en la fila, campo x campo dr(0) = [Link](indice).Cells("campo0").Value dr(1) = [Link](indice).Cells("campo1").Value 'Primero se elimina la fila actual [Link](indice) 'Despus se inserta la fila copiada una posicin arriba [Link](dr, indice - 1) 'Posiciona el foco en la posicion actual [Link] = [Link](indice - 1).Cells(0)

End If 'Se repiten los mismos pasos para la columna botn abajo 'Solo que se cambia el signo 'Click en la columna boton abajo If [Link]([Link]).Name = "abajo" Then 'Se encuentra en la parte inferior del grid If indice = [Link] - 1 Then Exit Sub End If 'Se deben de insertar los datos en la fila, campo x campo dr(0) = [Link](indice).Cells("campo0").Value dr(1) = [Link](indice).Cells("campo1").Value 'Primero se elimina la fila actual [Link](indice) 'Despus se inserta la fila copiada una posicin abajo [Link](dr, indice + 1) 'Posiciona el foco en la posicion actual [Link] = [Link](indice + 1).Cells(0) End If End Sub

También podría gustarte