I wrote a WPF numeric text box control that can support currency, integer and numeric values.
It can prevent invalid input such as letters, spaces, etc. and can be constrained to a max length value.
For example, with the currency text box; when the text box is in focused the formatting is removed allowing the user to enter the value.
When the text box loses focus, formatting is reapplied and display in the text box.
Value Type Text Box
Please let me know if this helps you.