Cómo copiar las filas coincidentes del DataGridView a otro DataGridView
Tengo tres DataGridViews. Dos en el formulario 3 y uno en el formulario 1. Estoy tratando de copiar dos filas de DataGridView con el mismo id del formulario 3 al DataGridView del formulario 1, pero mi código sólo muestra una fila incluso si hay múltiples filas en DataGridView2 del formulario 3.
Dim x As String
x = Form3.DataGridView1.CurrentRow.Cells(1).Value
Dim i As Integer = (Form3.DataGridView2.Rows.Count - 1)
Do While (i >= 0)
i = (i - 1)
For Each dr As DataGridViewRow In Form3.DataGridView2.Rows
If dr.Cells(0).Value = x Then
DataGridView1.Rows.Clear()
DataGridView1.Rows.Add(dr.Cells(0).Value, dr.Cells(1).Value, dr.Cells(2).Value, dr.Cells(3).Value, dr.Cells(4).Value)
End If
Next
Loop
davy.ai
El código anterior solo agrega una fila al DataGridView1 en form1 porque la línea ‘DataGridView1.Rows.Clear ()’ está borrando todas las filas cada vez que se ejecuta el bucle. En su lugar, mueva esta línea fuera del bucle para que solo borre las filas una vez antes de que comience el bucle. Además, mueva la línea ‘DataGridView1.Rows.Add()’ fuera del bucle y agregue las filas al DataGridView1 en form1 de forma incremental. Código actualizado: