Hallo,
JelliesBabe hat folgendes geschrieben : |
Ich schreibe in WPF... |
Dann mach das doch demnächst auch in der entsprechenden Sparte
Wenn Du verhindern willst, dass etwas anderes als Ziffern in die Textbox eingegeben werden sollen, kannst Du das im PreviewKeyDown-Event machen, mit folgender Methode (die Du im XAML entsprechend eintragen musst):
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37:
| private static bool IsNumericKey(Key key) { switch (key) { case Key.D0: case Key.D1: case Key.D2: case Key.D3: case Key.D4: case Key.D5: case Key.D6: case Key.D7: case Key.D8: case Key.D9:
case Key.NumPad0: case Key.NumPad1: case Key.NumPad2: case Key.NumPad3: case Key.NumPad4: case Key.NumPad5: case Key.NumPad6: case Key.NumPad7: case Key.NumPad8: case Key.NumPad9: return true;
default: return false; } }
private void textBox_PreviewKeyDown(object sender, KeyEventArgs e) { if (!IsNumericKey(e.Key)) e.Handled = true; } |
Das verhindert aber nicht, dass da Zahlen größer 20.000 eingetragen werden. Da muss man allerdings auch vorher wissen, was denn passieren soll, wenn das passiert. Es würde sich eventuell auch anbieten, das erst zu prüfen, wenn der Fokus die Textbox verlässt. Auch eine Rückmeldung an den Nutzer kann sinnvoll sein. Da wären ein paar Informationen von Dir gut, was Du möchstest
Viele Grüße
Christian
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".