Создание текстового поля для цифровых значений - C#
Формулировка задачи:
Visual C#. Проект для Smart device (Windows CE)
Нужно создать пользовательский элемент управления, производный от TextBox, так что он будет принимать только числовой ввод. Взял пример отсюда: http://msdn.microsoft.com/ru-ru/libr...code-snippet-1. Зашибись. Дальше надо сделать, чтобы после ввода первой цифры автоматически добавлялась десятичная точка. Сделал так:
Точка добавляется, но курсор остается перед ней. Теперь надо передвинуть курсор в конец, чтобы вводить следующие цифры, например, так:
И тут начинается лажа. Десятичная точка перемещается на первую позицию, а цифра становится после нее. Как это побороть?
protected override void OnKeyPress(KeyPressEventArgs e) { if (Char.IsDigit(e.KeyChar)) { // Digits are OK if (this.Text.Length == 0) { this.Text += decimalSeparator; } } }
this.SelectionStart = 2; this.SelectionLength = 0;
Решение задачи: «Создание текстового поля для цифровых значений»
textual
Листинг программы
else e.Handled = true;
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д