maskedTextBox w Visual2008

0

Chciałem zrobić jakiś textBox do którego wpisywałoby się nr gg ... więc od razu ,żeby była maska tylko na cyfry użyłem maskedTextBox , ale denerwuje mnie w niej jedna rzecz. Gdy ustawie maskę to gdy użytkownik kliknie na kontrolkę to kursor nie ustawia się na początku tylko w miejscu gdzie klika.

To przez ten Prompt Char .... chyba

P.S. a tak z innej beczki od ilu do ilu cyfr może mieć numer gg.

0

heh chyba nikt nie wie....

Więc pozostałem przy textBox i użyłem zdarzenia keyPress ...

if(Char::IsNumber(e->KeyChar.ToString(),0)== false)
				 e->KeyChar= '0';

teraz można wpisać tylko liczby ... bo zamiast liter wpisuje 0 , ale jak zrobić żeby nic nie wpisywało ( nie mogę użyć '' bo się pluje) jakiś pomysł ??

aha i zamiast Backspace tez mi wstaiwa 0 ... heh ...

0

możesz użyć '\0', powinien NULLowy znak ignorować.
jeśli chodzi o samo sprawdzenie i jakieś problemy z backspace. Powinno zadziałać takie coś, trochę pewniejsze jest:

if( (e->KeyChar<'0') || (e->KeyChar>'9') ) e->KeyChar= '\0';
0

Użyj zdarzenia KeyDown . W jego argumentach jest parametr SuppressKeyPress, ustaw go na true i żaden znak nie będzie wpisany.
Opcja ta dostępna jest od wersji 2.0 .NET.

1 użytkowników online, w tym zalogowanych: 0, gości: 1