0 / 0 / 1
Регистрация: 08.12.2014
Сообщений: 20
|
|||||||||||
1 | |||||||||||
Работа с textbox10.05.2017, 17:44. Показов 2139. Ответов 4
Метки нет (Все метки)
Доброго времени суток.
Не так давно занимаюсь c#. Есть программа. Имеются, почти, 50 TextBox-ов. Необходимо ограничить ввод различных данных. Грубо говоря 1-10 только целые числа, 20-30 только дробные и т.д. Для это было реализовано что-то подобное:
Но вопрос в том что можно ли как-то сократить число кода? 50 textbox-ов на описание каждого минимум по 7 строк, что-то не то. Я так предполагал, можно запускать проверку по нажатию button-а, проверять все перед расчетом. Тогда при каждом нажатии "Пуск", запускается предварительно проверка измененная Proof_KeyPress_canttouchthis(textBox38), например. Если я правильно понимаю это подчистит примерно 300 строк. Вопрос... Можно как-либо сделать проверку, универсальную функцию, для проверки всех текстбоксов? Первая версия мне больше нравится, для каждого tb она проверяет событие ввода. если удовлетворяет критериям то позволяет ввод символа. Может есть функция или что-либо что ловит все изменения на форме и от этого прыгать? Подскажите.
0
|
10.05.2017, 17:44 | |
Ответы с готовыми решениями:
4
Работа с TextBox. Текст из multiline TextBox в несколько простых TextBox Работа с массивом элементов класса TextBox. Окрашивание textBox при нажатии мыши на него Работа с textbox. Сохранение текста при выходе из программы только если textbox имеет текст Работа с textBox |
Злой самаритянин
182 / 182 / 94
Регистрация: 24.04.2014
Сообщений: 686
|
|
10.05.2017, 17:48 | 2 |
ice42, ты можешь всем текстбоксам задать один метод-обработчик проверки.
0
|
0 / 0 / 1
Регистрация: 08.12.2014
Сообщений: 20
|
|
10.05.2017, 18:13 [ТС] | 3 |
не совсем понимаю как это работает, можете на пальцах подсказать?)
при запуске программы мне нужно отлавливать (KeyPressEventArgs e)? нужно какой-то ивент сделать?) он может как-нибудь, в плохих руках, повлиять на работу программы? если я пользуюсь tb.readonly, с этим обработчиком ввод также будет запрещен?
0
|
Злой самаритянин
182 / 182 / 94
Регистрация: 24.04.2014
Сообщений: 686
|
|
11.05.2017, 10:52 | 4 |
Сообщение было отмечено ice42 как решение
Решение
ice42, у тебя щас есть, например, 10 одинаковых методов, которые проверяют 10 текстбоксов на то, что вводится целое число. Предполагаю, что они работают. Удаляй 9 из 10 методов, оставь один, назови его как-нибудь универсально (TextBox_IntCheck, например).
Теперь открываешь дизайнер формы, выделяешь все эти 10 текстбоксов, открываешь свойства, нажимаешь на иконку с молнией, открываются ивенты, находишь там свой KeyPress, тыкаешь на него 1 раз, появляется стрелочка справа, тыкаешь ее, выпадает список методов, там выбираешь свой TextBox_IntCheck. Профит. Теперь этот метод будет проверять все 10 текстбоксов.
1
|
0 / 0 / 1
Регистрация: 08.12.2014
Сообщений: 20
|
|
11.05.2017, 15:09 [ТС] | 5 |
И все?!))
Огромное вам Спасибо!
0
|
11.05.2017, 15:09 | |
11.05.2017, 15:09 | |
Помогаю со студенческими работами здесь
5
Работа с TextBox Работа с TextBox Работа с textbox и БД Работа с textBox Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |