⇒ Библиотека книг по компьютерным технологиям
⇒ ⇒ Разработка Windows-приложений на Microsoft Visual Basic .NET и Microsoft Visual C# .NET. Учебный курс MCAD/MCSD
⇒ ⇒ ⇒ Глава 2. Создание пользовательского интерфейса
⇒ ⇒ ⇒ ⇒ Практикум 2. Приложение Virtual Doughnut Factory
Читать далее: Закрепление материала
Сейчас вы напишите простые обработчики, проверяющие значение текстового поля txtQuantity. Для этого воспользуйтесь компонентом ErrorProvider. В следующем практикуме вы добавите к форме дополнительные процедуры, проверяющие вводимые данные.
Создание обработчиков, проверяющих вводимые данные, в проектах Visual Basic .NET
Toolbox компонент ErrorProvider — он появится в области компонентов.View Code, чтобы открыть редактор кода. В редакторе кода укажите в раскрывающемся списке слева txtQuantity, а в списке справа — KeyPress.В редакторе кода появится шаблон обработчика события txtQuantity_KeyPress.
Visual Basic .NET
Private Sub txtQuantity_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtQuantity.KeyPress
If Char.IsDigit(e.KeyChar) = False Then
ErrorProvider1.SetError(txtQuantity, "Please enter a numeric value")
Else
ErrorProvider1.SetError(txtQuantity, "")
End If
End Sub
txtQuantity, а в меню справа — событие Validating; редактор кода откроет шаблон обработчика соответствующего события.txtQuantity, а также допустимость введенного значения:Visual Basic .NET
Private Sub txtQuantity_Validating(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles txtQuantity.Validating
' Проверить, пусто ли поле.
If txtQuantity.Text = "" Then
ErrorProvider1.SetError(txtQuantity, "Please, enter a quantity")
e.Cancel = True
' Проверить, допустимо ли введенное значение.
ElseIf ErrorProvider1.GetError(txtQuantity) <> "" Then
e.Cancel = True
Else
ErrorProvider1.SetError(txtQuantity, "")
End If
End Sub
Создание обработчиков, проверяющих вводимые данные, в проектах Visual C#
Toolbox компонент ErrorProvider — он появится в области компонентов.txtQuantity в окне Properties щелкните кнопку Events и дважды щелкните событие KeyPress — в редакторе кода откроется шаблон обработчика события txtQuantity_KeyPress.Visual C#
private void txtQuantity_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
{
if(Char.IsDigit(e.KeyChar) == false)
errorProvider1.SetError(txtQuantity, "Please enter a numeric value");
else
errorProvider1.SetError(txtQuantity, "");
}
Solution Explorer щелкните правой кнопкой форму frmMain и выберите из контекстного меню команду View Designer. Выберите поле txtQuantity, в окне Properties щелкните кнопку Events, затем дважды щелкните событие Validating — редактор кода откроет шаблон обработчика соответствующего события.txtQuantity значения, а также допустимость введенного значения:Visual C#
private void txtQuantity_Validating(object sender, System.ComponentModel.CancelEventArgs e)
{
// Проверить, пусто ли поле.
if(txtQuantity.Text == "")
{
errorProvider1.SetError(txtQuantity, "Please, enter a quantity");
e.Cancel = true;
}
// Проверить, допустимо ли введенное значение.
else if(errorProvider1.GetError(txtQuantity) != "")
e.Cancel = true;
else
errorProvider1.SetError(txtQuantity, "");
}