* При перепечатке материалов ссылка на www.SeoLiga.ru обязательна!
Отображение сообщений об ошибках
7 февраля 2009
Метод SetError компонента ErrorProvider позволяет вывести сообщение об ошибке рядом с элементом управления. Этот метод принимает имя элемента управления и текст сообщения об ошибке в качестве параметров; вызывают его так:
Visual Basic .NET Этот пример предполагает наличие элемента управления nameTextBox и компонента ErrorProvider с именем rnyErrorProvider. myErrorProvider.SetError(nameTextBox, "Name cannot be left blank!") Visual C# // Предполагается существование элемента управления nameTextBox // и компонента ErrorProvider с именем rnyErrorProvider. myErrorProvider.SetError(nameTextBox, "Name cannot be left blank!"); В результате исполнения этого кода поле nameTextBox отображает значок, а при наведении на этот элемент управления указателя мыши появляется всплывающая подсказка с заданным текстом. Сообщение об ошибке разрешается задавать и во время проектирования Если изучить окно Properties после добавления на форму компонента ErrorProvider, не- трудно заметить, что у каждого элемента управления появилось новое свойство Error on х, где х — имя экземпляра ErrorProvider. Во время проектирования значение это- го свойства задают через окно Properties, во время выполнения заданное таким об- разом значение отображается как сообщение об ошибке для данного элемента, Ряд свойств компонента ErrorProvider определяет способ отображения сообще- ния об ошибке. Свойство Icon задает значок, отображаемый после элемента управ- ления. Одна форма может содержать несколько экземпляров ErrorProvider, напри- мер один, отображающий сообщения об ошибках, а другой — предупреждения, при этом каждому экземпляру ErrorProvider разрешается назначить собственный зна- чок. Другое свойство этого компонента — BlinkStyle — заставляет значок мигать, частоту мигания определяет свойство BlinkRate. > Применение компонента ErrorProvider при создании обработчика события, проверяющего значение элемента управления 1. Создайте форму и добавьте к ней компонент ErrorProvider — он появится в об- ласти компонентов. 2. Установите в true свойство CausesValidation элемента управления, который дол- жен выводить сообщения об ошибках, если это еше не сделано. 3. Добавьте к обработчику события Validating этого элемента управления код, про- веряющий введенное в него значение. При помощи метода SetError установите текст сообщения, которое отображается, если при проверке введенного обнару- жится ошибка. Вот пример обработчика, использующего экземпляр компонента ErrorProvider с именем my Error Provide г; этот обработчик проверяет текстовое поле pswordTextBox: Visual Basic .NET Private Sub pswordTextBox_Validating(ByVal sender as Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles pswordTextBox.Validating Проверить введенное значение. If pswordTextBox.Text = "" Then Задать текст сообщения об ошибке ввода. гпуЕ г ror Provide г. Set Error (pswordTextBox, "Password cannot be blank!") Else Если введено допустимое значение, очистить текст сообщения: поскольку ошибки нет, сообщение не выводится. myErrorProvider.SetError(pswordTextBox, "") End If End Sub Visual C# private void pswordTextBox_Validating(object sender, System.ComponentModel.CancelEventArgs e) { // Проверить введенное значение, if (pswordTextBox,Text == "") // Задать текст сообщения об ошибке ввода. rnyEr ro rProvide г. Set Error (pswordTextBox, "Password cannot be blank!"); else // Если введено допустимое значение, очистить текст сообщения: // поскольку ошибки нет, сообщение не выводится. rnyErrorProvideг.SetError{pswordTextBox, "");