Oppure

Loading
21/03/18 16:06
cuore napoletano
Salve a tutti e buona pasqua
Ho un problema semplice per voi ma difficile per me.
Ho un datagridview che vorrei funzionasse come un foglio di excel
e cioè una griglia con tre colonne (taglio, quantità , importo)
e digitando un numero nella casella quantità in corrispondenza di
un taglio mi riportasse nella corrispondente casella importo
il prodotto taglio x quantità.
Non so interecettare l'evento appropriato.

Finora ho scritto solo questo codice:
    Private Sub DataGridView1_EditingControlShowing(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewEditingControlShowingEventArgs) Handles DataGridView1.EditingControlShowing
        If DataGridView1.CurrentCellAddress.X = 1 Then
            AddHandler e.Control.KeyPress, AddressOf cellTextBox_KeyPress
        Else
            RemoveHandler e.Control.KeyPress, AddressOf cellTextBox_KeyPress
        End If
    End Sub

    Private Sub cellTextBox_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs)
        If Not (Char.IsDigit(e.KeyChar) OrElse Char.IsControl(e.KeyChar)) Then
            e.Handled = True
        End If

    End Sub




Qualche consiglio? Grazie!
aaa
21/03/18 17:26
Mikelius
Provato con DataGridView.CellValueChanged?

Ogni volta che cambia il contenuto aggiorni la cella che ti interessa
aaa
22/03/18 7:58
cuore napoletano
funziona, mi era sfuggito questo evento, grazie
aaa
22/03/18 12:44
Mikelius
Postato originariamente da cuore napoletano:

funziona, mi era sfuggito questo evento, grazie

prego.
Un'altro metodo potrebbe essere gestire un evento KeyPress o KeyDown. Controllando che il tasto premuto sia un tasto invio
aaa