none
Datagridview somar célula em edição RRS feed

  • Pergunta

  • Bom dia pessoal.

    Tenho um checkbox na coluna de grid e desejo somar o valor de outra coluna sempre que a anterior receba o click, mas o método que percorre a grid só considera "SEFIN" = "1" após a célula perder o foco. já testei no CellEndEdit e em outros eventos, mas não funfou... 

    Preciso que ao clicar no checkbox da coluna o valor em edição seja considerado.

                Dim dTotSel As Double = 0
                For i As Integer = 0 To gridContaCorrente.RowCount - 1
                    If gridContaCorrente.Item("SELFIN", i).Value.ToString = "1" Then
                        dTotSel = Convert.ToDouble(gridContaCorrente.Item("VALORPREVISTO", i).Value) + dTotSel
                    End If
                Next
                txtTotSelecionados.Text = Format(dTotSel, "#,0.00")


    Rodrigo Marchese rodrigomarchese@msn.com

    quarta-feira, 10 de abril de 2019 14:03

Respostas

  • Eu estava batendo cabeça usando o evento CellClick mas deveria usar o CellContentClick.

    Resolvido da seguinte forma:

        Private Sub gridContaCorrente_CellContentClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles gridContaCorrente.CellContentClick
            Try
                If e.RowIndex > -1 Then
                    If gridContaCorrente.Columns(e.ColumnIndex).Name = "SELFIN" Then
                        gridContaCorrente.CommitEdit(DataGridViewDataErrorContexts.Commit)
                        Call SomaSelecionados()
                    End If
                End If
            Catch ex As Exception
                MessageBox.Show(ex.Message, Me.Text, MessageBoxButtons.OK, MessageBoxIcon.Error)
            End Try
        End Sub


    Rodrigo Marchese rodrigomarchese@msn.com

    • Marcado como Resposta RodrigoM sexta-feira, 12 de abril de 2019 13:05
    sexta-feira, 12 de abril de 2019 13:04

Todas as Respostas

  • Olá, tive caso similar, não lembro como ou se resolvi, mas estou postando aqui para lembrar de verificar se solucionei e acompanhar o post...

    Se ajudou, marque como resposta! Obrigado.

    • Marcado como Resposta RodrigoM sexta-feira, 12 de abril de 2019 13:04
    • Não Marcado como Resposta RodrigoM sexta-feira, 12 de abril de 2019 13:05
    quarta-feira, 10 de abril de 2019 17:34
  • Eu estava batendo cabeça usando o evento CellClick mas deveria usar o CellContentClick.

    Resolvido da seguinte forma:

        Private Sub gridContaCorrente_CellContentClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles gridContaCorrente.CellContentClick
            Try
                If e.RowIndex > -1 Then
                    If gridContaCorrente.Columns(e.ColumnIndex).Name = "SELFIN" Then
                        gridContaCorrente.CommitEdit(DataGridViewDataErrorContexts.Commit)
                        Call SomaSelecionados()
                    End If
                End If
            Catch ex As Exception
                MessageBox.Show(ex.Message, Me.Text, MessageBoxButtons.OK, MessageBoxIcon.Error)
            End Try
        End Sub


    Rodrigo Marchese rodrigomarchese@msn.com

    • Marcado como Resposta RodrigoM sexta-feira, 12 de abril de 2019 13:05
    sexta-feira, 12 de abril de 2019 13:04