Visual Basic.NET - SUMAR SOLO FILAS CON VALOR TRUE EN EL LA COLUMNA CHECKBOX

 
Vista:
Imágen de perfil de JOSE

SUMAR SOLO FILAS CON VALOR TRUE EN EL LA COLUMNA CHECKBOX

Publicado por JOSE (7 intervenciones) el 21/01/2018 05:02:04
BUENAS !

ESTA ES UNA VENTANA DONDE SE REGISTRA EL DEPÓSITO DE UN LOTE DE CHEQUES.
EN LA PRIMERA COLUMNA EL USUARIO DEBE INDICAR CUALES CHEQUES QUIERE INCLUIR.
EN EL TEXTBOX DE ABAJO DEBE APARECER EL IMPORTE TOTAL DE LA OPERACIÓN EN TIEMPO REAL (LA SUMA DE LOS IMPORTES DE LOS CHEQUES SEÑALADOS).

NO CONSIGO CALCULAR ESE TOTAL PORQUE NO SE BIEN CUAL EVENTO DEL DATAGRIDVIEW USAR.


MUCHAS GRACIAS DE ANTEMANO!

JOSÉ
Captura2
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Wilfredo Patricio Castillo
Val: 1.239
Bronce
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

SUMAR SOLO FILAS CON VALOR TRUE EN EL LA COLUMNA CHECKBOX

Publicado por Wilfredo Patricio Castillo (720 intervenciones) el 22/01/2018 06:34:59
Eso es sencillo.

Debes generar un método void o Sub en VB, que te haga el cálculo según la fila con check, ese método lo debes llamar en el método
CellValueChanged del datagridview.

Pero para que te funcione con solo seleccionar el check, debes agregar esto en el método CurrentCellDirtyStateChanged

if(dataGridView1.IsCurrentCellDirty)
{
dataGridView1.CommitEdit(DataGridViewDataErrorContexts.Commit);
}


Eso sería todo, con eso apenas checas uno, automáticamente se debe disparar tu método de cálculo, como verás esas líneas están en C#, pero pues un if es facil de cambiar para VB.

Saludos cordiales,.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de JOSE

SUMAR SOLO FILAS CON VALOR TRUE EN EL LA COLUMNA CHECKBOX

Publicado por JOSE (7 intervenciones) el 30/01/2018 03:26:32
Muchas gracias Wilfredo!

Como no pude traducir a vb.net terminé utilizando la siguiente solución que funciona muy bien.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
Private Sub dgrListadoCheques_CellMouseUp(sender As Object, e As DataGridViewCellMouseEventArgs) Handles dgrListadoCheques.CellMouseUp
    If e.ColumnIndex = 0 Then
 
        If dgrListadoCheques.Rows(e.RowIndex).Cells("Cargar").Value = False Then
            dgrListadoCheques.Rows(e.RowIndex).Cells("Cargar").Value = True
        Else
            dgrListadoCheques.Rows(e.RowIndex).Cells("Cargar").Value = False
        End If
 
 
 
        SumaTotal = 0
 
        For Each dgvrow As DataGridViewRow In dgrListadoCheques.Rows
            If dgvrow.Cells("Cargar").Value = True Then
                SumaTotal = SumaTotal + CInt(dgvrow.Cells("Importe").Value)
            End If
        Next
        txtTotal.Text = Format(SumaTotal, "##,##")
        rbtnExp1.Checked = False
        rbtnExp2.Checked = False
        txtNumeroOperacion.Text = ""
 
 
    End If
End Sub
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar