Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Компонент ErrorProvider

Оповещение пользователя об ошибках ввода

Проверка на уровне формы

Проверка на уровне формы позволяет одновременно проверить все поля формы. Для подобной проверки обычно применяют процедуру, которая вызывается, когда пользователь готов открыть другую форму; более совершенный способ — обработка на уровне формы события, связанного с клавиатурой. Централизованная обработка событий, связанных с клавиатурой, позволяет управлять вводом данных в любое поле формы.

Например, можно написать метод, активирующий командные кнопки только после заполнения всех полей формы и выполняющий определенные действия в зависимости от того, какие клавиши нажимаются.

Обработку событий на уровне формы реализуют с применением событий KeyPress, KeyDown и KeyUp. Форма автоматически генерирует события клавиатуры, только если на ней нет активированных или видимых элементов управления, в противном случае эти события генерирует элемент управления, получающий фокус.

Чтобы заставить форму автоматически генерировать события клавиатуры, следует установить ее свойство KeyPreview в true в результате форма будет генерировать эти события прежде элемента управления, получившего фокус. Предположим, что событие KeyPress обрабатывается и формой, и размещенным на нем текстовым полем, а свойство KeyPreview формы установлено в true. При нажатии клавиши форма первой генерирует событие KeyPress, поэтому ее обработчик этого события исполняется первым, и только после его завершения будет исполнен обработчик события KeyPress текстового поля.

Если пользователь ввел в поле недопустимое значение, необходимо оповестить его об этом и дать возможность исправить ошибку. Существует много способов уведомления об ошибках ввода. Если ошибка очевидна и ее не требуется пояснять, можно ограничиться звуковым сигналом.

Привлечь внимание пользователя к ошибке можно и по-другому, изменив цвет фона или текста элемента управления (при помощи его свойств BackColor и ForeColor соответственно ). Например, выделить текстовое поле с недопустимым значением, задав для него красный фон через свойство BackColor.

Чтобы вывести более информативное описание ошибки, воспользуйтесь методом MessageBox.Show, отображающим небольшое модальное окно с сообщением. Поскольку это окно — модальное, пользователю не удастся просто игнорировать его и продолжить работу с программой.

Компонент ErrorProvider предоставляет удобный способ оповещения пользователей о допущенных имиошибках ввода. Онпозволяет задать для каждого элемента управления формы текст сообщения, отображаемого при вводе недопустимого значения. Еслидля элемента управления задан текст сообщения об ошибке, то при возникновении ошибки рядом с ним появится соответствующий значок, а если навести на него указатель мыши, отобразится всплывающая подсказка с заданным сообщением. Компонент ErrorProvider расположен в секции WindowsForms панели Toolbox.

<== предыдущая лекция | следующая лекция ==>
Работа с фокусом ввода | Отображение сообщений об ошибках
Поделиться с друзьями:


Дата добавления: 2014-01-04; Просмотров: 226; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.01 сек.