Control.Validated 이벤트
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
컨트롤의 유효성 검사가 완료되면 발생합니다.
public:
event EventHandler ^ Validated;
public event EventHandler Validated;
public event EventHandler? Validated;
member this.Validated : EventHandler
Public Custom Event Validated As EventHandler
이벤트 유형
예제
다음 코드 예제에서는 파생 클래스 TextBox 를 사용 하 고 사용자가 입력 하는 전자 메일 주소의 유효성을 검사 합니다. 전자 메일 주소가 표준 형식("@" 및 "."포함)이 아니면 유효성 검사가 실패 ErrorProvider 하고 아이콘이 표시되고 이벤트가 취소됩니다. 이 예제에서는 양식에 TextBox 및 ErrorProvider 컨트롤을 만들어야 합니다.
private:
void textBox1_Validating( Object^ sender, System::ComponentModel::CancelEventArgs^ e )
{
String^ errorMsg;
if ( !ValidEmailAddress( textBox1->Text, &errorMsg ) )
{
// Cancel the event and select the text to be corrected by the user.
e->Cancel = true;
textBox1->Select( 0, textBox1->Text->Length );
// Set the ErrorProvider error with the text to display.
this->errorProvider1->SetError( textBox1, errorMsg );
}
}
void textBox1_Validated( Object^ sender, System::EventArgs^ e )
{
// If all conditions have been met, clear the ErrorProvider of errors.
errorProvider1->SetError( textBox1, "" );
}
public:
bool ValidEmailAddress( String^ emailAddress, [Out]interior_ptr<String^> errorMessage )
{
// Confirm that the email address String* is not empty.
if ( emailAddress->Length == 0 )
{
*errorMessage = "email address is required.";
return false;
}
// Confirm that there is an "@" and a "." in the email address, and in the correct order.
if ( emailAddress->IndexOf( "@" ) > -1 )
{
if ( emailAddress->IndexOf( ".", emailAddress->IndexOf( "@" ) ) > emailAddress->IndexOf( "@" ) )
{
*errorMessage = "";
return true;
}
}
*errorMessage = "email address must be valid email address format.\n" +
"For example 'someone@example.com' ";
return false;
}
private void textBox1_Validating(object sender,
System.ComponentModel.CancelEventArgs e)
{
string errorMsg;
if(!ValidEmailAddress(textBox1.Text, out errorMsg))
{
// Cancel the event and select the text to be corrected by the user.
e.Cancel = true;
textBox1.Select(0, textBox1.Text.Length);
// Set the ErrorProvider error with the text to display.
this.errorProvider1.SetError(textBox1, errorMsg);
}
}
private void textBox1_Validated(object sender, System.EventArgs e)
{
// If all conditions have been met, clear the ErrorProvider of errors.
errorProvider1.SetError(textBox1, "");
}
public bool ValidEmailAddress(string emailAddress, out string errorMessage)
{
// Confirm that the email address string is not empty.
if(emailAddress.Length == 0)
{
errorMessage = "email address is required.";
return false;
}
// Confirm that there is an "@" and a "." in the email address, and in the correct order.
if(emailAddress.IndexOf("@") > -1)
{
if(emailAddress.IndexOf(".", emailAddress.IndexOf("@") ) > emailAddress.IndexOf("@") )
{
errorMessage = "";
return true;
}
}
errorMessage = "email address must be valid email address format.\n" +
"For example 'someone@example.com' ";
return false;
}
Private Function ValidEmailAddress(ByVal emailAddress As String, ByRef errorMessage As String) As Boolean
' Confirm there is text in the control.
If textBox1.Text.Length = 0 Then
errorMessage = "Email address is required."
Return False
End If
' Confirm that there is an "@" and a "." in the email address, and in the correct order.
If emailAddress.IndexOf("@") > -1 Then
If (emailAddress.IndexOf(".", emailAddress.IndexOf("@")) > emailAddress.IndexOf("@")) Then
errorMessage = ""
Return True
End If
End If
errorMessage = "Email address must be valid email address format." + ControlChars.Cr + _
"For example 'someone@example.com' "
Return False
End Function
Private Sub textBox1_Validating(ByVal sender As Object, _
ByVal e As System.ComponentModel.CancelEventArgs) Handles textBox1.Validating
Dim errorMsg As String
If Not ValidEmailAddress(textBox1.Text, errorMsg) Then
' Cancel the event and select the text to be corrected by the user.
e.Cancel = True
textBox1.Select(0, textBox1.Text.Length)
' Set the ErrorProvider error with the text to display.
Me.errorProvider1.SetError(textBox1, errorMsg)
End If
End Sub
Private Sub textBox1_Validated(ByVal sender As Object, _
ByVal e As System.EventArgs) Handles textBox1.Validated
' If all conditions have been met, clear the error provider of errors.
errorProvider1.SetError(textBox1, "")
End Sub
설명
호출 하 여 키보드 (TAB, SHIFT + TAB 등)를 사용 하 여 포커스를 변경 하면 합니다 Select 또는 SelectNextControl 메서드를 설정 하거나를 ContainerControl.ActiveControl 속성을 현재 폼에 포커스 이벤트가 다음 순서 대로 발생:
마우스를 사용 하 여 또는 호출 하 여 포커스를 변경 하면를 Focus 메서드 포커스 이벤트가 다음 순서 대로 발생 합니다.
경우는 CausesValidation 속성이 false
의 Validating 및 Validated 이벤트는 표시 되지 않습니다.
경우는 Cancel 의 속성을 CancelEventArgs 로 설정 되어 true
에 Validating 이벤트 대리자, 후 일반적으로 발생 하는 모든 이벤트는 Validating 이벤트는 표시 되지 않습니다.
주의
, , , GotFocus, ValidatingLeaveLostFocus또는 Validated 이벤트 처리기 내에서 포커스를 Enter설정하지 마세요. 이렇게 하면 애플리케이션 또는 운영 체제 응답 하지 발생할 수 있습니다. 자세한 내용은 WM_KILLFOCUS 항목 및 메시지 및 메시지 큐 정보 항목의 "메시지 교착 상태" 섹션을 참조하세요.
이벤트 처리에 대한 자세한 내용은 이벤트 처리 및 발생 을 참조하십시오.
적용 대상
추가 정보
.NET