I noticed a tiny problem with the NumericUpDown. I set NumberFormatInfo.NumberDecimalDigits = 0, Minimum = 1 and Maximum = 10. The UpDown is bound to a property in the xaml and that property's value can sometimes be 0. When it is 0, the UpDown displays the minimum value (as one would expect) but it displays it in the default format, "1.0", ignoring the NumberDecimalDigits = 0.
This is easy to workaround by following good coding practices and never letting the property have a value of 0, but it occurred to me that the NumberDecimalDigits should never be ignored, once it is set. Say you are using it for a "Number of Children" field - it gives the impression that you could have fractional children, ha ha.