Фильтрация ввода с клавиатуры в текстовом поле, C#
Вопрос
Я хочу фильтровать ввод с клавиатуры в текстовое поле в зависимости от разрешенного типа ввода.например
0 для цифр только 1 для алфавитов только 2 для алкоголики
Поэтому, если настроен 0 и на клавиатуре нажат символ «а», он не отображается в текстовом поле.Как мне это сделать на C#?
Спасибо
Решение
Вам необходимо подписаться на событие KeyPress элемента управления (и, возможно, метод KeyDown), и если нажатие клавиши должно быть съедено, установите обработано свойство истинно.Подробнее читайте в MSDN (с образцом, охватывающим вашу проблему).
Другие советы
Не уверен, что правильно понял ваш вопрос, но вы можете использовать текстовое поле с маской для создания многих типов входных фильтров.
вы можете использовать регулярные выражения.В соответствии с полученным пользователем вводом вы можете изменить метод регулярного выражения/проверки.ниже приведена статья, в которой объясняется, как расширить текстовое поле для проверки регулярных выражений.надеюсь, что это поможет хотя бы иметь некоторое представление.http://www.c-sharpcorner.com/UploadFile/scottlysle/RegExTextBox01022007150131PM/RegExTextBox.aspx