Witam, zastanawiam się jak przeprowadzić walidację na danych wpisanych do text boxach. W pole teoretycznie możemy wpisać tylko same liczby natomiast w drugi rodzaj pól liczbę wraz z procentem. Jak to sprawdzić, znak po znaku sprawdzać ciąg ?
0
0
Czesc - Jak dopuszczalne są tylko poprawne liczby to wystarczy ci TryParse(texbox.text). I nie wiem dlaczego użytkownik ma wpisywać znak procenta. Jeśli chodzi jedynie o ilość procentów. Wystarczy za textbox-em textblock/label % ;)
0
Możesz użyć regexpa wrzuconego w DataAnnotations.
Dla czystych liczb:
[RegularExpression("^[0-9]*$"), ErrorMEssage = ...]
Dla liczb z procentem. Tylko ktoś mądrzejszy musiałby to sprawdzić, bo pewno tutaj poczyniłem herezję, której nie dostrzegam.
[RegularExpression("^[0-9.%?]$"), ErrorMEssage = ...]
Ewentualnie, jeśli z DA Ci nie po drodze z jakiegoś powodu, to zajrzyj do dokumentacji Regex, da Ci mniej więcej ten sam efekt przy walidacji.
1
Użyć odpowiedniej kontrolki np. NumericUpDown albo MaskedTextBox zamiast zwykłego TextBoxa.