Zaczynam kolejny wątek, bo w międzyczasie walczyłem z walidacją liczb w textBoxie, gdzie również mam problemy..
Nauczony poprzednim wątkiem ( http://4programmers.net/Forum/Newbie/163487-walidacja_podanego_do_textboxa_imienia ) precyzuje jaki potrzebuje efekt walidacji:
Walidacja na poziomie wciskanych klawiszy!:
- możliwe znaki do wpisania: '0-9' ; ',' (wpisując '.' ma pojawić się ',') ; '-' (liczby ujemne)
- dodatkowo możliwe jest wpisanie tylko jeden raz ',' lub '-'
przykłady:
30,4
-5
-5,1
Rozumiem, że należy do tego przygotować odpowiedni regexp, ale jak to wszystko 'podpiąć' pod zdarzenie keypress ? (i aby dodatkowo działał oczywiście backspace).
Na ten moment powiedzmy mam coś takiego:
private void numberTextBox_KeyPress(object sender, KeyPressEventArgs e)
{
if ((char.IsDigit(e.KeyChar) == false) && (e.KeyChar != '\b') && (e.KeyChar != ',')) e.Handled = true;
}
i coś tam waliduje.. ale słabo to spełnia powyższe kryteria..