Beschränkung der Benutzer bei der Eingabe nur zahlen in einer C# - windows-Anwendung
Habe ich versucht diesen code zu beschränken, nur die zahlen.Es geben nur die zahlen und machen keinen Eintrag, wenn wir versuchen, um Zeichen einzugeben oder andere Bedienelemente, auch wenn es nicht geben Sie die Rücktaste, auch. wie Sie verhindern, dass Sie die Rücktaste aus.
private void TxtBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if (!System.Text.RegularExpressions.Regex.IsMatch(e.KeyChar.ToString(), "\\d+"))
e.Handled = true;
}
- Meinst du, dass Sie zulassen möchten backspaces?
- e.Behandelt = "+-.\b0123456789".IndexOf(e.KeyChar) < 0;
Du musst angemeldet sein, um einen Kommentar abzugeben.
Brauchen Sie nicht, um einen RegEx verwenden, um zu testen, für die Ziffern:
Ermöglichen backspace:
Wenn Sie möchten, fügen Sie andere zulässige Tasten, Blick auf die
Keys
enumeration und verwenden Sie den Ansatz oben.Erlauben nur zahlen in einer textbox in einer windows-Anwendung verwenden
Diesem Beispiel-code erlaubt die Eingabe von zahlen und mit der Rücktaste löschen Sie zuvor eingegebene text.
Verwenden Sie die Char.IsDigit-Methode (String, Int32) Methode und check-out der
NumericTextbox
von MicrosoftMSDN gewusst Wie: Erstellen Sie ein Numerisches Textfeld
setzen Sie folgenden code in der keypress-Ereignis deiner textbox:
können Sie
Char.IsDigit()
MethodeMethoden Vorgeschlagen, oben nur verhindern, dass Benutzer-Eingaben, aber die Nummer,
aber es schlägt fehl, wenn Benutzer kopieren und fügen Sie etwas text in die textbox so wir müssen auch prüfen, ob die Eingabe auf text ändern, Veranstaltung
Erstellen ontextchangeEvent