Модераторы: gambit, Partizan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> MaskedTextBox - раздельное редактирование полей 
:(
    Опции темы
snav
Дата 13.10.2007, 08:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 55
Регистрация: 8.9.2007

Репутация: нет
Всего: 4



Добрый день.

Стоит задача ввести значение угла, выраженное в градусах, минутах и секундах. Использовать нестандартные контролы не хочется, поэтому остановился на MaskedTextBox. В контроле создаются поля градусов, минут и секунд, разделенные константными символами, например: [ 12° 34' 56" ]. Проблема в том, что невозможно настроить MaskedTextBox так, чтобы поля редактировались раздельно. Если, например, пользователь сотрет значение минут (34), то цифры секунд переползут в поле минут и получится [ 12° 56' __" ]. Практика показала, что это очень неудобно. Хотелось бы, чтобы при стирании одного поля другие поля не менялись: [ 12° __' 56" ]. Видимо, здесь не обойтись без ручной обработки событий, но никак не могу придумать, как это сделать попроще. Можете что-нибудь посоветовать? 

PM   Вверх
yar
Дата 13.10.2007, 12:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 101
Регистрация: 8.9.2007
Где: Одесса, Украина

Репутация: нет
Всего: 8



Вот тут есть улучшенный контрол на базе MaskedTextBox, который работает как надо и статья на эту тему. Так или иначе, без существенной доработки стандартного MaskedTextBox не обойтись.
--------------------
Если бы строители возводили здания так, как программисты пишут программы, первый же дятел уничтожил бы мировую цивилизацию.Джеральд Вайнберг
PM MAIL WWW   Вверх
snav
Дата 13.10.2007, 16:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 55
Регистрация: 8.9.2007

Репутация: нет
Всего: 4



yar
Спасибо. Примерно так я и представлял. Но, честно говоря, мне не очень нравится идея самому обрабатывать все возможные комбинации клавиш: Del, Backspace, Ctrl+X, Shift+Del, Ctrl+Z, Alt+Backspace. Это слишком трудоемко и, кроме того, мне кажется, что привязка к предопределенным клавишам - не самый лучший стиль программирования... Может быть есть более изящное решение?


PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Разработка Windows Forms | Следующая тема »


 




[ Время генерации скрипта: 0.0394 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.