![]() |
Модераторы: gambit, Partizan |
![]() ![]() ![]() |
|
solnushko |
|
|||
Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 18.5.2007 Репутация: нет Всего: нет |
Подскажите плиз!!! Как мне сделать в C# ограничение на ввод букв в textbox??? Просто в моей программе 12 textboxов и в них можно вводить только цифры!
|
|||
|
||||
Ch0bits |
|
|||
![]() Python Dev. ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2124 Регистрация: 21.2.2005 Где: Казань Репутация: 1 Всего: 62 |
Перехватываешь OnKeyDown у своих текстбоксов. Что-то типа этого:
|
|||
|
||||
Сарт |
|
||||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 159 Регистрация: 29.4.2006 Репутация: нет Всего: 0 |
Для запрещения ввода в textbox любых даннных кроме цифр мы должны в обработчике KeyPress для textbox'а присвоить свойству Handled передаваемого параметра типа System.Windows.Forms.KeyPressEventArgs значение true.
Вот пример кода:
...
... тут нужна для того, чтобы разрешить ввод десятичного разделителя (точки в данном случае) - причем только одного: если десятичный разделитель уже существует, то вводить второй заперщено. --------------------
[color=purple][/color]Died.Of course, System.StackOverflow |
||||
|
|||||
KuZyagroup |
|
|||
![]() magento solution ![]() ![]() Профиль Группа: Участник Сообщений: 283 Регистрация: 16.4.2007 Где: Kiev Репутация: нет Всего: 4 |
Все гораздо проще.
Юзай MaskedTextBox c Маской из "0". MaskedTextBox - спецальный контрл который создан для ограничения ввода в текст бокс |
|||
|
||||
AKRAS |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 12.3.2008 Репутация: нет Всего: нет |
А Как сделать что бы выводилось сообщение, для пользователя...что нужно вводить цифры??
|
|||
|
||||
neic |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 839 Регистрация: 28.1.2007 Репутация: нет Всего: 7 |
AKRAS
А в чём проблема?
|
|||
|
||||
erm0l0v |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 157 Регистрация: 11.1.2011 Репутация: нет Всего: 1 |
как мне кажется:
не самый лучший вариант, представите что вы пишете какой текст в поле ввода, долго пишете и как обычно смотрите только на клавиатуру, а потом поднимаете глаза и видите что из-за ололо ошибки ваш ввод закончился на первых двух символах. Думаю вы будете мягко говоря недовольны. Можно просто запрещать ввод "неправильных" символов и где нибудь написать какие символы можно вводить например сверху над полем ввода или в всплывающей подсказке. Или можно разрешать вводить все символы, и одновременно проверять валидность данных, и в случае присутствия "неверных" символов подсвечивать поле красным или как то еще сигнализировать о не правильном вводе. Не знаю есть ли в WF автоматический механизм реализации Validate Error. Но в любом случае такое поведение не сложно реализовать. Например положить контрол в Border и менять цвет Bordera в зависимости от валидности сообщения. |
|||
|
||||
oleg_in62 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 5.3.2008 Репутация: нет Всего: нет |
вместо
лучше использовать errorProvider.SetError(control, "Ололо ошибка" ), тогда возле указанного контрола появится красный кружок с восклицательным знаком, при наведении на который, будет отображаться "Ололо ошибка", а чтобы кружок исчез сделать errorProvider.SetError(control, "" ). Один errorProvider можно использовать для всех текстбоксов, в этом случае можно разрешить ввод любых символов и отображать предупреждение, когда вводятся буквы и убирать когда текст изменяется на правильный. |
|||
|
||||
Ыумук |
|
||||
Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 19.11.2014 Репутация: нет Всего: нет |
Подскажите пожалуйста, а куда этот код ставить? У меня в программе несколько textBox'ов, необходимо, чтоб во всех появилось ограничение по вводимым в них символам. |
||||
|
|||||
![]() ![]() ![]() |
Прежде чем создать тему, посмотрите сюда: | |
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Разработка Windows Forms | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |