Ситуация:
В Фреймворке 2.0 появился новый контрол MaskedTextBox
Как работать с датами, зип-кодами, телефонами и т.д. я понял, но вот как вводить просто суммы, числа?
Вопрос: Как добиться от MaskedTextBox функциональности Access-овского TextBox-a с InputMask?
Пример: В Access-е ставим маску "!999 999 999.99"
и текстбокс выглядит так "___ ___ ___.__", к примеру надо ввести "1234.56", можно набрать например "__1 23_ 4__.__" как только я ставлю точку курсор перепрыгивает к десятичным, и я ввожу "56". после потери фокуса весе пропуски исчезают и текстбокс принимает следующий вид "1 234.56". Теперь о .NET, в MaskedTextBox-е установливаю
маску в "999,999.99"
а ValidatingType = typeof(System.Decimal)
Макса не пускает вводить ничего кроме цифр ( что и требовалось ) но на нажатие точки( десятичного разделителя ) он никак не реагирует и приходится стрелками переходить к позиции после точки и вводить дробную часть, но даже после этого лишние пробелы не исчезают и TypeValidationCompleted начинает ругаться
PS: Сори..... видимо вопрос получился несколько "запутаный".... Вобщем идея проста нужно кликнуть на MaskedTextBox куда попало, и начать набирать "1.25" либо "123456.77" и все это должно нормально отобразиться.
Ответить
|