ValidationError Osztály

Definíció

Olyan érvényesítési hibát jelöl, amelyet a kötési motor akkor hoz létre, ha érvényesítési ValidationRule hibát jelent, vagy MarkInvalid(BindingExpressionBase, ValidationError) explicit módon.

public ref class ValidationError
public class ValidationError
type ValidationError = class
Public Class ValidationError
Öröklődés
ValidationError

Példák

Az alábbi példa egy stílusindítót mutat be, amely érvényesítési hibaüzenetet ToolTip küld. A Validation.Errors csatolt tulajdonság objektumgyűjteményt ValidationError ad vissza a kötött elemen.

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

Megjegyzések

Az WPF adatkötési modell lehetővé teszi, hogy érvényesítési szabályokat társítson a Binding objektumhoz. Az ellenőrzés a cél–forrás érték átvitele során történik a konverter meghívása előtt. Az alábbiak az érvényesítési folyamatot ismertetik.

  1. Amikor egy érték a céltulajdonságból a forrástulajdonságba kerül, az adatkötési motor először eltávolítja ValidationError a kötött elem csatolt tulajdonságához esetleg hozzáadott Validation.Errors értékeket. Ezután ellenőrzi, hogy Bindingvannak-e definiálva egyéni érvényesítési szabályok erre vonatkozóan, ebben az esetben mindaddig meghívja a Validate metódust, ValidationRule amíg egyikük meghibásodik, vagy mindaddig, amíg az összes megfelel.

  2. Ha van egy egyéni szabály, amely nem felel meg, a kötési motor létrehoz egy ValidationError objektumot, és hozzáadja a Validation.Errors kötött elem gyűjteményéhez. Ha Validation.Errors nem üres, az Validation.HasError elem csatolt tulajdonsága a következőre truevan állítva: . Ha a NotifyOnValidationErrorBinding tulajdonsága trueértékre van állítva, akkor a kötőmotor kiváltja a Validation.Error csatolt eseményt az elemen.

  3. Ha az összes szabály megfelel, a kötési motor meghívja a konvertert, ha van ilyen.

  4. Ha a konverter áthalad, a kötési motor meghívja a forrástulajdonság halmazát.

  5. Ha a kötéshez társítva ExceptionValidationRule van, és a 3. vagy a 4. lépés során kivétel lép fel, a kötési motor ellenőrzi, hogy van-e UpdateSourceExceptionFilter. A UpdateSourceExceptionFilter visszahívással egyéni kezelőt biztosíthat a kivételek kezeléséhez. UpdateSourceExceptionFilter Ha nincs megadva Bindinga kötési motor, kivétellel létrehoz egy ValidationError elemet, és hozzáadja a Validation.Errors kötött elem gyűjteményéhez.

Az érvényes értékátvitel mindkét irányban (cél a forrás vagy a forrás cél felé) törli a Validation.Errors csatolt tulajdonságot.

Konstruktorok

Name Description
ValidationError(ValidationRule, Object, Object, Exception)

Inicializálja az ValidationError osztály új példányát a megadott paraméterekkel.

ValidationError(ValidationRule, Object)

Inicializálja az ValidationError osztály új példányát a megadott paraméterekkel.

Tulajdonságok

Name Description
BindingInError

Lekéri ennek BindingExpressionaz objektumnak az MultiBindingExpression objektumát.ValidationError Az objektum vagy érvénytelenként van megjelölve, vagy sikertelen érvényesítési szabálysal rendelkezik.

ErrorContent

Lekéri vagy beállít egy objektumot, amely további kontextust biztosít ehhez ValidationError, például a hibát leíró sztringet.

Exception

Lekéri vagy beállítja a Exception hiba ValidationErrorokaként szolgáló objektumot, ha a hiba kivétel eredménye.

RuleInError

Lekéri vagy beállítja a ValidationRule hiba ValidationErrorokaként szolgáló objektumot, ha a hiba egy érvényesítési szabály eredménye.

Metódusok

Name Description
Equals(Object)

Meghatározza, hogy a megadott objektum egyenlő-e az aktuális objektummal.

(Öröklődés forrása Object)
GetHashCode()

Ez az alapértelmezett kivonatoló függvény.

(Öröklődés forrása Object)
GetType()

Lekéri az Type aktuális példányt.

(Öröklődés forrása Object)
MemberwiseClone()

Az aktuális Objectpéldány sekély másolatát hozza létre.

(Öröklődés forrása Object)
ToString()

Az aktuális objektumot jelképező sztringet ad vissza.

(Öröklődés forrása Object)

A következőre érvényes:

Lásd még