Saludos a los que siguen este tema, lo he solucionado con el evento CellEndEdit y le he puesto el calculo que he querido hacer:
Código:
Private Sub MovDespachoDataGridView1_CellEndEdit(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles MovDespachoDataGridView1.CellEndEdit
Try
If e.ColumnIndex <> 8 Then Return
Dim devolucion As Integer = MovDespachoDataGridView1.Item(e.ColumnIndex, e.RowIndex).Value
If MovDespachoDataGridView1.Item((e.ColumnIndex - 1), e.RowIndex).Value < MovDespachoDataGridView1.Item(e.ColumnIndex, e.RowIndex).Value Then
Throw New ArgumentException("Error: La devolución no puede ser mayor que el despacho")
Else
If devolucion <> 0 Then
Dim despacho As Integer = MovDespachoDataGridView1.Item((e.ColumnIndex - 1), e.RowIndex).Value
Dim porcDevol As Decimal = (devolucion * 100) / despacho
MovDespachoDataGridView1.Item((e.ColumnIndex + 2), e.RowIndex).Value = porcDevol
Else
MovDespachoDataGridView1.Item((e.ColumnIndex + 2), e.RowIndex).Value = 0
End If
End If
Catch ex As Exception
exepcionMensajeDevol(ex)
MovDespachoDataGridView1.DataSource = MovDespachoTableAdapter.GetDataByDevolEnCero(CmBxRuta.SelectedValue, CmBxArticulo.SelectedValue)
End Try
End Sub
para cualquier pregunta estamos a la orden... Saludos a todos desde Maracaibo-Venezuela