Probleem met NumericUpDown

Status
Niet open voor verdere reacties.

Bernard1983

Gebruiker
Lid geworden
7 mei 2008
Berichten
17
Hey allemaal,

Ik heb een probleem met NumericUpDown (NUD).

Ik moet een programma maken met een NUD met waardes tussen de 0 en 999. Als er 0 staat dan mag de knop 'OK' niet enabled zijn en dit is me ook gelukt met de volgende code:

Code:
    Private Sub nudArticles_ValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles nudArticles.ValueChanged
        'Als de waarde van nudArticles 0 is dan wordt de knop btnAddOrderList op nonactief gezet.
        If nudArticles.Value = 0 Then
            btnAddOrderlist.Enabled = False
            'Anders wordt de knop btnAddOrderList op actief gezet
        ElseIf nudArticles.Value > 0 Then
            btnAddOrderlist.Enabled = True
        End If
    End Sub

Maar als ik nu met het toetsenbord nummers intik dan kan invullen wat ik wil maar de knop word niet actief. Oftewel met de pijltjes Up en Down dan werkt de code netjes, gebruik ik numpad dan werkt deze niet, ik heb al verschillende dingen geprobeerd zoals de methode KeyPress, maar ik kom er niet uit :mad:

Iemand die mij hiermee kan helpen?

Alvast bedankt.

Groet
 
Laatst bewerkt:
Ik kan je zo niet direct een oplossing geven, maar ik denk dat ik wel weet wat er mis gaat.

Bij Valuechanged event is de waarde pas veranderd als je uit de edit mode bent. Wanneer je handmatig een waarde invoert ben je in edit mode. dit verandert pas als je een andere control gefocust hebt.

Bij up en down klikken ben je heel even in edit mode, maar ga je na de klik er direct weer uit.

Werkt het wel als je een waarde invoert en dan op enter ramt?
 
Ik kan je zo niet direct een oplossing geven, maar ik denk dat ik wel weet wat er mis gaat.

Bij Valuechanged event is de waarde pas veranderd als je uit de edit mode bent. Wanneer je handmatig een waarde invoert ben je in edit mode. dit verandert pas als je een andere control gefocust hebt.

Bij up en down klikken ben je heel even in edit mode, maar ga je na de klik er direct weer uit.

Werkt het wel als je een waarde invoert en dan op enter ramt?

Ja het werkt als je op 'Enter' of 'Tab' ros...maarja deze moet het gelijk doen als 1 cijfertje wordt veranderd. Het is namelijk voor een cursus en dit was 1 van de punten die ik aan moest passen
 
Zoals ik al zei ben je in de edit mode.

Misschien is het event validating wat?
 
Hoi, je kan dit controleren in het key UP event.Nadat je een nieuwe waarde hebt ingegeven controleer je of de value eigenschap van de numerUpDown gelijk is aan 0.
Code:
Private Sub NumericUpDown1_KeyUp(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles NumericUpDown1.KeyUp
        If NumericUpDown1.Value = 0 Then
            Button1.Enabled = False
        End If
    End Sub
 
Hoi, je kan dit controleren in het key UP event.Nadat je een nieuwe waarde hebt ingegeven controleer je of de value eigenschap van de numerUpDown gelijk is aan 0.
Code:
Private Sub NumericUpDown1_KeyUp(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles NumericUpDown1.KeyUp
        If NumericUpDown1.Value = 0 Then
            Button1.Enabled = False
        End If
    End Sub

YES....dat was het! :)

Bedankt Ginanity! En ook de rest voor het meedenken!!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan