ValidationError Třída

Definice

Představuje chybu ověřování, která je vytvořena buď pomocí modulu vazby, když ValidationRule hlásí chybu ověření, nebo prostřednictvím MarkInvalid(BindingExpressionBase, ValidationError) metody explicitně.

public ref class ValidationError
public class ValidationError
type ValidationError = class
Public Class ValidationError
Dědičnost
ValidationError

Příklady

Následující příklad ukazuje trigger stylu, který vytvoří chybovou ToolTip zprávu o ověření. Připojená Validation.Errors vlastnost vrátí kolekci ValidationError objektů ve vázaném elementu.

<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>

Poznámky

Model datových vazeb WPF umožňuje přidružit ověřovací pravidla k objektu Binding . Ověření proběhne během přenosu hodnoty cíle do zdroje před zavolání převaděče. Následující článek popisuje proces ověření.

  1. Když se hodnota přenáší z cílové vlastnosti do zdrojové vlastnosti, modul datových vazeb nejprve odebere všechny ValidationError , které mohly být přidány do Validation.Errors připojené vlastnosti vázaného prvku. Pak zkontroluje, jestli jsou pro Bindingni definována nějaká vlastní ověřovací pravidla . V takovém případě volá metodu Validate na každé z nich ValidationRule , dokud jedno z nich selže nebo dokud neprojdou všechna z nich.

  2. Jakmile existuje vlastní pravidlo, které neprojde, vytvoří modul vazby ValidationError objekt a přidá ho do Validation.Errors kolekce vázaného elementu. Pokud Validation.Errors není prázdná, Validation.HasError je vlastnost připojeného elementu nastavena na truehodnotu . Pokud je vlastnost NotifyOnValidationError objektu Binding nastavená na true, pak modul vazby vyvolá u elementu přidruženou událost Validation.Error.

  3. Pokud všechna pravidla projdou, modul vazeb pak zavolá převaděč, pokud existuje.

  4. Pokud převaděč projde, modul vazby volá setter zdrojové vlastnosti.

  5. Pokud má vazba přidruženou ExceptionValidationRule vazbu a během kroku 3 nebo 4 dojde k výjimce, modul vazby zkontroluje, jestli existuje UpdateSourceExceptionFilter. Zpětné volání UpdateSourceExceptionFilter můžete použít k poskytnutí vlastní obslužné rutiny pro zpracování výjimek. UpdateSourceExceptionFilter Pokud není zadán v Binding, vytvoří modul ValidationError vazby s výjimkou a přidá ho Validation.Errors do kolekce vázaného elementu.

Platný přenos hodnoty v obou směrech (cíl na zdroj nebo zdroj na cíl) vymaže připojenou Validation.Errors vlastnost.

Konstruktory

ValidationError(ValidationRule, Object)

Inicializuje novou instanci ValidationError třídy se zadanými parametry.

ValidationError(ValidationRule, Object, Object, Exception)

Inicializuje novou instanci ValidationError třídy se zadanými parametry.

Vlastnosti

BindingInError

BindingExpression Získá objekt nebo MultiBindingExpression tohoto ValidationErrorobjektu . Objekt je buď explicitně označen jako neplatný, nebo má neúspěšné ověřovací pravidlo.

ErrorContent

Získá nebo nastaví objekt, který poskytuje další kontext pro tento ValidationError, například řetězec popisující chybu.

Exception

Získá nebo nastaví Exception objekt, který byl příčinou tohoto ValidationError, pokud je chyba výsledkem výjimky.

RuleInError

Získá nebo nastaví ValidationRule objekt, který byl příčinou tohoto ValidationError, pokud je chyba výsledkem ověřovacího pravidla.

Metody

Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
GetHashCode()

Slouží jako výchozí hashovací funkce.

(Zděděno od Object)
GetType()

Získá aktuální Type instanci.

(Zděděno od Object)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Objectsouboru .

(Zděděno od Object)
ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)

Platí pro

Viz také