In textbox nur bestimmte zeichen zulassen

  • VB.NET

Es gibt 3 Antworten in diesem Thema. Der letzte Beitrag () ist von ~blaze~.

    In textbox nur bestimmte zeichen zulassen

    Hallo zusammen..

    ich habe da mal ne frage zur der Textbox eingabe... wie ihr schon aus der überschrift entnehmen könnt, würde ich gerne wissen wie ich in meiner textbox nur bestimmte zahlen zulasse... also alle zahlen von 0-9... sobald ich irgenteinen anderen buchstaben drücke soll das programm also garnicht reagieren und nix eingeben.. ich habe diese lösung schon bei einem anderen program gesehen, nur kann ich die nötigen hilfen nicht finden..

    Soll über das Keypress gehn glaub ich aber keine ahnung wie ich dem sage das nur bestimmte tasten zugelasen werden sollen..

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „osiris“ ()

    hallo osiris,

    dafür gibt es folgende wege

    1. eine maskedtextbox (findest du inder toolbox)
    bei dieser gibst du eine maske an, die eingaben die nicht der maske entsprechen werden verworfen
    schau dazu in der hilfe unter maskedtextbox.mask nach

    2. normale textbox
    bei dieser kannst du die eingabe unterdrücken, wenn du im keypress ereignis die in frage kommenden tasten mit

    VB.NET-Quellcode

    1. e.Cancel = True

    quitierst.

    aber - im prinzip hat alex2000 recht, hatten wir hier schon öfter

    gruss

    mikeb69
    Hi
    Mal ohne Sufu ;)

    VB.NET-Quellcode

    1. Dim ValidKeys As String = "1234567890" & Chr(8) & Chr(46) '1-9 + Backspace + Delete
    2. Private Sub Control1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Control1.KeyDown
    3. If e.Shift = False AndAlso e.Control = False AndAlso e.Alt = False Then
    4. If ValidKeys.Contains(ChrW(e.KeyCode)) = False Then
    5. e.Handled = True
    6. End If
    7. End If
    8. End Sub


    Valid String enthält alle benutzbaren Buchstaben.

    Gruß
    ~blaze~