ValidationError Sınıf
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Bir doğrulama hatası bildirdiğinde ValidationRule bağlama altyapısı tarafından veya yöntemi aracılığıyla açıkça oluşturulan bir doğrulama hatasını MarkInvalid(BindingExpressionBase, ValidationError) temsil eder.
public ref class ValidationError
public class ValidationError
type ValidationError = class
Public Class ValidationError
- Devralma
-
ValidationError
Örnekler
Aşağıdaki örnekte, doğrulama hata iletisini bildiren bir ToolTip stil tetikleyicisi gösterilmektedir. Validation.Errors Ekli özellik, ilişkili öğedeki bir nesne koleksiyonu ValidationError döndürür.
<Style x:Key="textStyleTextBox" TargetType="TextBox">
<Setter Property="Foreground" Value="#333333" />
<Setter Property="MaxLength" Value="40" />
<Setter Property="Width" Value="392" />
<Style.Triggers>
<Trigger Property="Validation.HasError" Value="true">
<Setter Property="ToolTip"
Value="{Binding RelativeSource={RelativeSource Self},
Path=(Validation.Errors)[0].ErrorContent}"/>
</Trigger>
</Style.Triggers>
</Style>
Açıklamalar
WPF veri bağlama modeli, doğrulama kurallarını nesnenizle ilişkilendirmenizi Binding sağlar. Doğrulama, dönüştürücü çağrılmadan önce hedef kaynak değer aktarımı sırasında gerçekleşir. Aşağıda doğrulama işlemi açıklanmaktadır.
Bir değer hedef özelliğinden kaynak özelliğine aktarılırken, veri bağlama altyapısı önce ilişkili öğenin ekli özelliğine ValidationError eklenmiş olabilecekleri Validation.Errors kaldırır. Ardından, bu için herhangi bir özel doğrulama kuralının tanımlanıp tanımlanmadığını Bindingdenetler. Bu durumda, biri başarısız olana kadar veya hepsi geçene kadar her Validate birinde yöntemini çağırırValidationRule.
Geçmeyen özel bir kural olduğunda, bağlama altyapısı bir ValidationError nesne oluşturur ve bunu ilişkili öğenin koleksiyonuna Validation.Errors ekler. Boş Validation.Errors olmadığında, öğesinin Validation.HasError ekli özelliği olarak
trueayarlanır. Ayrıca, NotifyOnValidationError öğesinin Binding özelliğitrueolarak ayarlanırsa, bağlama altyapısı öğesinde ekli Validation.Error olayını tetikler.Tüm kurallar geçerse, bağlama altyapısı varsa dönüştürücüsünü çağırır.
Dönüştürücü geçerse, bağlama altyapısı kaynak özelliğin ayarlayıcısını çağırır.
Bağlamanın kendisiyle ilişkilendirilmiş bir ExceptionValidationRule örneği varsa ve 3 veya 4. adım sırasında bir özel durum oluşursa, bağlama altyapısı bir UpdateSourceExceptionFilterolup olmadığını denetler. Özel durumları işlemek için özel bir işleyici sağlamak üzere UpdateSourceExceptionFilter geri çağırmayı kullanabilirsiniz. üzerinde belirtilmezseUpdateSourceExceptionFilter, bağlama altyapısı özel durum içeren bir Binding oluşturur ve bunu ValidationError ilişkili öğenin koleksiyonuna ekler.Validation.Errors
Her iki yönde geçerli bir değer aktarımı (hedefe hedef veya hedefe kaynak) ekli özelliği temizler Validation.Errors .
Oluşturucular
| Name | Description |
|---|---|
| ValidationError(ValidationRule, Object, Object, Exception) |
Belirtilen parametrelerle sınıfının yeni bir örneğini ValidationError başlatır. |
| ValidationError(ValidationRule, Object) |
Belirtilen parametrelerle sınıfının yeni bir örneğini ValidationError başlatır. |
Özellikler
| Name | Description |
|---|---|
| BindingInError |
Bu BindingExpressionöğesinin MultiBindingExpression veya ValidationError nesnesini alır. Nesne açıkça geçersiz olarak işaretlendi veya doğrulama kuralı başarısız oldu. |
| ErrorContent |
Bu ValidationErroriçin hatanın açıklandığı bir dize gibi ek bağlam sağlayan bir nesnesi alır veya ayarlar. |
| Exception |
Hata bir özel durumun sonucuysa, bunun Exceptionnedeni olan nesneyi alır veya ayarlarValidationError. |
| RuleInError |
Hata bir doğrulama kuralının ValidationRule sonucuysa, bunun ValidationErrornedeni olan nesneyi alır veya ayarlar. |
Yöntemler
| Name | Description |
|---|---|
| Equals(Object) |
Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler. (Devralındığı yer: Object) |
| GetHashCode() |
Varsayılan karma işlevi işlevi görür. (Devralındığı yer: Object) |
| GetType() |
Geçerli örneğin Type alır. (Devralındığı yer: Object) |
| MemberwiseClone() |
Geçerli Objectbasit bir kopyasını oluşturur. (Devralındığı yer: Object) |
| ToString() |
Geçerli nesneyi temsil eden bir dize döndürür. (Devralındığı yer: Object) |