2009-02-10 2 views
9

Was ist der einfachste Weg, eine Bearbeitungsmaske in WPF für ein einfaches Textfeld anzugeben?WPF-Editiermaske

z.B. eine, die während der Eingabe 10000 in 10.000 umwandelt.

Antwort

4

Kurze Antwort, gibt es keine einfache Möglichkeit. Wenn Sie Masken häufig verwenden, würde ich Ihnen empfehlen, ein eigenes Steuerelement mit Maskierungsfunktion zu erstellen. Die Verwendung der MaskedTextProvider-Klasse sollte ziemlich einfach sein.

Im Folgenden finden Sie ein Beispiel einer benutzerdefinierten TextBox mit Maskierungsfunktionen:

Masked TextBox example...

0

Der einfachste und direkteste Weg ist wahrscheinlich, einfach das TextChanged-Ereignis zu erfassen und die von Ihnen benötigte Verarbeitung auszuführen.

ex ... http://karlhulme.wordpress.com/2007/02/15/masking-input-to-a-wpf-textbox/

+0

Ja, ich kann das jetzt tun. Ich hatte gehofft, dass es eine schnelle und einfache Vorlage für die Anwendung in xaml gibt. –

+4

Wenn Sie diese Art von Lösung durchführen, stellen Sie sicher, dass Sie zwischenzeitliche "schlechte" Werte akzeptieren. Es gibt nichts frustrierenderes, als 10000 zu 20000 zu ändern, indem man die 1 löscht und das Textfeld als nur "0" formatiert. – scwagner

0

Haben Sie an der Xceed Datagrid-Express für WPF aussah. Es ist kostenlos und bietet eine maskierte Textfeldsteuerung, die ganz einfach das macht, was Sie wollen.

Die Xceed Datagrid Express Edition für WPF ist nicht mehr verfügbar.