viernes, 25 de febrero de 2011

DATOS DE UN GRID A OTRO DATA GRID EN BISUAL VASIC


Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnDonar.Click

' muostrar el total de la suma en el control Label para la columna llamada Costo
Pago.Text = " " & Format(Sumar("total", datagridcompras), ).ToString

End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnAgregar.Click
'determinar la direccion de copiar entre DGV1 y 2
If CheckBox1.Checked Then

'Comprobar que existen columnas seleccionadas
If datagridproducto.SelectedRows.Count > 0 Then
CopiarSeleccionadosDGV1aDGV2()
End If
Else
If datagridcompras.SelectedRows.Count > 0 Then
CopiarSeleccionadosDGV2aDGV1()
End If
End If
End Sub
'Copiar los elementos seleccionados del DGV1 al DGV2
Sub CopiarSeleccionadosDGV1aDGV2()
For Each Seleccion As DataGridViewRow In datagridproducto.SelectedRows
Me.datagridcompras.Rows.Add(ObtenerValoresFila(Seleccion))
Next
datagridproducto.ClearSelection()
End Sub
'
'Copiar los elementos seleccionados del DGV1 al DGV2
Sub CopiarSeleccionadosDGV2aDGV1()
For Each Seleccion As DataGridViewRow In datagridcompras.SelectedRows
'Me.CurrentAutoScaleDimensions.Tables(0).Rows.Add(ObtenerValoresFila(Seleccion))
Next
datagridcompras.ClearSelection()
End Sub
'
'Mover los elementos seleccionados del DGV1 al DGV2
Sub MoverSeleccionadosDGV1aDGV2()
'Para cada fila seleccionada
For Each Seleccion As DataGridViewRow In datagridproducto.SelectedRows
'Añadir los valores obtenidos de la fila seleccionada
'al segundo datagridview
Me.datagridcompras.Rows.Add(ObtenerValoresFila(Seleccion))
'eliminar la fila del DataGridView origen
datagridproducto.Rows.Remove(Seleccion)
Next
End Sub
'
'Mover los elementos seleccionados del DGV1 al DGV2
Sub MoverSeleccionadosDGV2aDGV1()
'Para cada fila seleccionada
For Each Seleccion As DataGridViewRow In datagridcompras.SelectedRows
'Añadir los valores obtenidos de la fila seleccionada
'al segundo datagridview
'Me.MiDataSet.Tables(0).Rows.Add(ObtenerValoresFila(Seleccion))
'eliminar la fila del DataGridView origen

datagridcompras.Rows.Remove(Seleccion)
Next
End Sub


Private Sub Button3_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnElimina.Click
'determinar la direccion de mover entre DGV1 y 2
If CheckBox1.Checked Then
'Comprobar que existen columnas seleccionadas
If datagridproducto.SelectedRows.Count > 0 Then
MoverSeleccionadosDGV1aDGV2()
End If
Else
If datagridcompras.SelectedRows.Count > 0 Then
MoverSeleccionadosDGV2aDGV1()
End If
End If
End Sub
'

'
'Obtener el contenido de la fila en un string()
'con el proposito de copiarlo o moverlo
'
'Recibe el 'row' y retorna su contenido en un array tipo string
Function ObtenerValoresFila(ByVal fila As DataGridViewRow) As String()
'Dimensionar el array al tamaño de columnas del DGV
Dim Contenido(Me.datagridproducto.ColumnCount - 1) As String
'Rellenar el contenido con el valor de las celdas de la fila
Dim Ndx As Integer
For Ndx = 0 To Contenido.Length - 1
Contenido(Ndx) = fila.Cells(Ndx).Value
Next
Return Contenido
End Function

No hay comentarios:

Publicar un comentario