If I set the ultranumericseditor to have a mask like ###.### and an initial value of 9.0. Then when the user tries to type into the field, the caret is positioned before the 9. So if the user tries to type 123.456 the 12 goes before the 9, then it goes past the decimals and types the 345 and you get 129.345 instead of 123.456.
This is not very easy or intuitive for the user.
Is there some way to make editing easier?
It sounds like you want the control to start off with all of the text selected so it will overwrite the existing value. Try handling the Enter event of the control and call the SelectAll method to select all of the text initially.
That's actually what I ended up doing, but it not perfect. it works for most cases, but the behavor of editing a number is still strange.
What I did in the pastwas to start the cursor at the end of a number field and in insert mode. In this mode chars scroll left and the caret stays in the same spot.. When they press the periiod you sihft the cursor to right after the decimal pooint and shift the character left the same. and you switch to overtpe mode which does not scroll charactesr, but instead moves the carret forward.
so to type 123.456 the user could type just those digits with no decimal point. i.e. to type any number where they want to include all the decimal digits, they just type every digit, no decimal needed (but harmless). To typoe a number with less than the total number of decimals, they do need to type the decimal point. This shift the integer digits in to the right sot and puts them in place to overtype the decimal digits.
This is very efficient and very natural. The current interface is not
Just my opinion, but the select all does okay.
thanks