Validation.Errors 연결된 속성

정의

바인딩된 요소에서 모든 활성 ValidationError 개체의 컬렉션을 가져옵니다.Gets the collection of all active ValidationError objects on the bound element.

see GetErrors
see GetErrors
see GetErrors

설명

응용 프로그램에서이 컬렉션의 콘텐츠를 수정할 수 없습니다.The application cannot modify the content of this collection. 이 연결 된 속성을 사용 하는 방법에 대 한 예제는 예제 섹션을 참조 하세요.See the Example section for an example of how to use this attached property.

WPF 데이터 바인딩 모델을 사용 하면 개체와 연결할 수 있습니다 ValidationRules Binding .The WPF data binding model enables you to associate ValidationRules with your Binding object. 변환기가 호출 되기 전에 대상 간 바인딩 소스 값을 바인딩하는 동안 유효성 검사가 수행 됩니다.Validation occurs during binding target-to-binding source value transfer before the converter is called. 다음은 유효성 검사 프로세스에 대 한 설명입니다.The following describes the validation process:

  1. 대상 속성에서 원본 속성으로 값을 전송 하는 경우 데이터 바인딩 엔진은 먼저 ValidationError 바인딩된 요소의 연결 된 속성에 추가 되었을 수 있는 모든를 제거 합니다 System.Windows.Controls.Validation.Errors .When a value is being transferred from the target property to the source property, the data binding engine first removes any ValidationError that may have been added to the System.Windows.Controls.Validation.Errors attached property of the bound element. 그런 다음 해당에 대해 정의 된 사용자 지정이 있는지 확인 ValidationRule Binding 합니다 .이 경우에는 Validate 각 s에 대해 메서드를 호출 합니다 ValidationRule .It then checks if there are any custom ValidationRules defined for that Binding, in which case it calls the Validate method on each of the ValidationRules until one of them runs into an error or until all of them pass.

  2. 통과 하지 않는 사용자 지정 규칙을 되 면 바인딩 엔진 만듭니다는 ValidationError 개체에 추가 합니다는 System.Windows.Controls.Validation.Errors 바인딩된 요소의 컬렉션입니다.Once there is a custom rule that does not pass, the binding engine creates a ValidationError object and adds it to the System.Windows.Controls.Validation.Errors collection of the bound element. System.Windows.Controls.Validation.Errors가 비어 있지 않으면 요소의 System.Windows.Controls.Validation.HasError 연결된 속성은 true로 설정됩니다.When System.Windows.Controls.Validation.Errors is not empty, the System.Windows.Controls.Validation.HasError attached property of the element is set to true. 또한 BindingNotifyOnValidationError 속성이 true로 설정된 경우 바인딩 엔진은 요소에서 System.Windows.Controls.Validation.Error 연결된 이벤트를 발생시킵니다.Also, if the NotifyOnValidationError property of the Binding is set to true, then the binding engine raises the System.Windows.Controls.Validation.Error attached event on the element.

  3. 모든 규칙이 통과 하면 바인딩 엔진은 변환기 (있는 경우)를 호출 합니다.If all of the rules pass, the binding engine then calls the converter, if one exists.

  4. 변환기가 통과 하는 경우 바인딩 엔진이 소스 속성의 setter를 호출 합니다.If the converter passes, the binding engine calls the setter of the source property.

  5. 바인딩에가 ExceptionValidationRule 연결 되어 있고 4 단계에서 예외가 throw 되는 경우 바인딩 엔진은가 있는지 확인 합니다 UpdateSourceExceptionFilter .If the binding has an ExceptionValidationRule associated with it and an exception is thrown during step 4, the binding engine checks to see if there is a UpdateSourceExceptionFilter. UpdateSourceExceptionFilter 콜백을 사용하여 예외를 처리하기 위한 사용자 지정 처리기를 제공하는 옵션이 있습니다.You have the option to use the UpdateSourceExceptionFilter callback to provide a custom handler for handling exceptions. UpdateSourceExceptionFilterBinding에 지정되지 않은 경우 바인딩 엔진은 예외가 있는 ValidationError를 만들고 바인딩된 요소의 System.Windows.Controls.Validation.Errors 컬렉션에 추가합니다.If an UpdateSourceExceptionFilter is not specified on the Binding, the binding engine creates a ValidationError with the exception and adds it to the System.Windows.Controls.Validation.Errors collection of the bound element.

또한 방향 (대상-원본 또는 원본-대상) 중 하나에서 유효한 값을 전송 하면이 지워집니다 Validation . Errors 연결 된 속성입니다.Also note that a valid value transfer in either direction (target-to-source or source-to-target) clears the Validation.Errorsattached property.

시나리오에서이 속성의 동작에 대 한 자세한 내용은 MultiBinding 을 참조 하십시오 ValidationError .For information about the behavior of this property in MultiBinding scenarios, see ValidationError.

자세한 내용은 데이터 바인딩 개요의 "데이터 유효성 검사"를 참조 하세요.For more information, see "Data Validation" in Data Binding Overview.

XAML 텍스트 사용XAML Text Usage

설명 부분을 참조하세요.See Remarks. Errors컬렉션 자체는 사용자가 설정할 수 없지만 XAML의 컨트롤 템플릿 정의에서 사용할 수 있습니다.The Errors collection itself is not user settable, but you can use it in a control template definition in XAML.

종속성 속성 정보Dependency Property Information

식별자 필드Identifier field ErrorsProperty
메타 데이터 속성 설정 trueMetadata properties set to true IsNotDataBindable

적용 대상