EVENTO CHECKBOX NO GRID

BRUNODOPREDIO 13/05/2011 18:45:02
#373900
olá pessoal pesquisei em diversos sites mas só encontro uma maneira de fezar o meu problema, maneira a qual eu naum gostaria de usar.

preciso somar o valor de pesos dos itens ticados no grid no momento do click no checkbox, mas não consigo o grid não conta o clique no checkbox como evento,aqui está o codigo quase correto mas preciso que ele seja acionado e feita a conta correta com o valor que a checkbox irá tomar depois do clique,
se estava false, quando clico vai ficar true e teria que somar a linha e vice-versa.

acima está a tela para melhor explicação, estou tentando e pesquisando a muito tempo e não consigo achar uma solução.

no exemplo acima eu acabei de clicar no checkbox do item 4 mas ele não somou o valor no peso liquido, ele somente irá somar se eu clicar em outra célula após ticar o checkbox, queria que fizesse a conta ao clicar no checkbox

Private Sub dgvItensPedido_CellClick(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles dgvItensPedido.CellClick
[ô]SOMA O PESO DOS ITENS SELECIONADOS DO GRID E ATRIBUI AO PESO LIQUIDO DA OP

Dim pesoliquido = 0
MsgBox(Me.dgvItensPedido.Item([Ô]ck[Ô], dgvItensPedido.CurrentRow.Index).Value)
For x = 0 To dgvItensPedido.Rows.Count - 1
Dim somapeso As String = Me.dgvItensPedido.Item([Ô]pesoTotal[Ô], x).Value
If Me.dgvItensPedido.Item([Ô]ck[Ô], x).Value = True Then
pesoliquido = pesoliquido + somapeso
End If
Next


txtPesoTLiquido.Text = pesoliquido


End Sub
End Class
TECLA 14/05/2011 15:53:05
#373934
Usa o evento MouseClick que dá certo.

Exemplo:
BRUNODOPREDIO 16/05/2011 08:56:56
#374032
Citação:

:
Usa o evento MouseClick que dá certo.

Exemplo:



Você colocou o código igual,ou parecido ao meu dentro do mouse clique?
Por que aqui no mouseclick ele tambem somente faz a conta depois de um segundo clique,acho que tem algum coisa errada no meu código.

Ele nesse evento faz a checagem antes da mudança do estado do checkbox, tem algum modo de commitar para que primeiro mude o checkbox depois faça a checagem?????
BRUNODOPREDIO 16/05/2011 15:54:51
#374054
To Procurando mas não consigo achar em forum nem tutorial ou aula nenhuma..........

Alguém sabe como faço para commitar a mudança do checkbox antes de fazer este código de verificação dentro do mouseClick.........

Seria assim, cliquei primeiro muda o checkbox e depois ele cai no mouse clique......... ou cai no mouse clique, muda o checkbox e depois cai no for da conta de soma de itens selecionados......


Grato..!!!!
SABIDAOXD 16/05/2011 16:04:01
#374057
não intendi o que voce quer fazer em sua última pergunta, voce poderia reformula-la?
BRUNODOPREDIO 16/05/2011 16:11:56
#374059
Citação:

:
não intendi o que voce quer fazer em sua última pergunta, voce poderia reformula-la?



Ehhh assimmm

meu código está da seguinte forma...

Private Sub dgvItensPedido_MouseClick(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles dgvItensPedido.MouseClick

[ô]SOMA O PESO DOS ITENS SELECIONADOS DO GRID E ATRIBUI AO PESO LIQUIDO DA OP


Dim pesoliquido As Decimal = 0
For x = 0 To dgvItensPedido.Rows.Count - 1
Dim somapeso As String = Me.dgvItensPedido.Item([Ô]pesoTotal[Ô], x).Value
If Me.dgvItensPedido.Item([Ô]ck[Ô], x).Value = True Then
pesoliquido = pesoliquido + somapeso
End If
Next
txtPesoTLiquido.Text = pesoliquido


End Sub

então ele pega todas as linhas que estão com o checkbox assinalado e soma atribuindo o valor daquela soma ao txtpesoLiquido conforme a figura do meu primeiro post.....

Mas vamos se dizer que eu clique em um dos dois da figura 1 ai do meu primeiro post....se eu desmarcar o checkbox da primeira linha ele deveria somar somente o valor da segunda linha e atribuir o peso de 1510 ao txtpesoliquido......

Mas o que ele está fazendo, ele está primeiro cainda o soma e depois desmarcando o checkbox, então ao clicar ele soma as duas linhas atribui ao pesoLIquido e depois desmarca o checkbox.

Eu quero um método que primeiro ele desmarque o checkbox depois ele efetue o for lah do mouseclick
SABIDAOXD 16/05/2011 16:19:03
#374060
vai na pasta do seu projeto e me manda só o arquivo .vb que tem os códigos, que eu acho que é só a organização das linhas, caso voce consiga antes nem precisa de me mandar, dê uma olhada na ordem das linhas
BRUNODOPREDIO 16/05/2011 16:51:22
#374069
Citação:

:
vai na pasta do seu projeto e me manda só o arquivo .vb que tem os códigos, que eu acho que é só a organização das linhas, caso voce consiga antes nem precisa de me mandar, dê uma olhada na ordem das linhas



A sequencia é essa.....
Private Sub dgvItensPedido_MouseClick(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles dgvItensPedido.MouseClick

[ô]SOMA O PESO DOS ITENS SELECIONADOS DO GRID E ATRIBUI AO PESO LIQUIDO DA OP
Dim pesoliquido As Decimal = 0

For x = 0 To dgvItensPedido.Rows.Count - 1

Dim somapeso As String = Me.dgvItensPedido.Item([Ô]pesoTotal[Ô], x).Value

If Me.dgvItensPedido.Item([Ô]ck[Ô], x).Value = True Then
pesoliquido = pesoliquido + somapeso

End If

Next

txtPesoTLiquido.Text = pesoliquido

End Sub
Tópico encerrado , respostas não são mais permitidas