Share via


ValidationError Kelas

Definisi

Mewakili kesalahan validasi yang dibuat baik oleh mesin pengikatan saat ValidationRule melaporkan kesalahan validasi, atau melalui MarkInvalid(BindingExpressionBase, ValidationError) metode secara eksplisit.

public ref class ValidationError
public class ValidationError
type ValidationError = class
Public Class ValidationError
Warisan
ValidationError

Contoh

Contoh berikut menunjukkan pemicu gaya yang membuat yang ToolTip melaporkan pesan kesalahan validasi. Properti Validation.Errors terlampir mengembalikan kumpulan ValidationError objek pada elemen terikat.

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

Keterangan

Model pengikatan data WPF memungkinkan Anda mengaitkan aturan validasi dengan objek Anda Binding . Validasi terjadi selama transfer nilai target-ke-sumber sebelum konverter dipanggil. Berikut ini menjelaskan proses validasi.

  1. Ketika nilai sedang ditransfer dari properti target ke properti sumber, mesin pengikatan data terlebih dahulu menghapus apa pun ValidationError yang mungkin telah ditambahkan ke Validation.Errors properti terlampir dari elemen terikat. Kemudian memeriksa apakah ada aturan validasi kustom yang didefinisikan untuk itu Binding, dalam hal ini ia memanggil Validate metode pada masing-masing ValidationRule sampai salah satu dari mereka gagal atau sampai semuanya lulus.

  2. Setelah ada aturan kustom yang tidak lulus, mesin pengikatan membuat ValidationError objek dan menambahkannya ke Validation.Errors koleksi elemen terikat. Ketika Validation.Errors tidak kosong, Validation.HasError properti terlampir dari elemen diatur ke true. Selain itu, jika properti NotifyOnValidationError dari Binding diatur ke true, maka mesin pengikat akan memunculkan Validation.Error peristiwa terlampir pada elemen.

  3. Jika semua aturan lolos, mesin pengikatan kemudian memanggil pengonversi, jika ada.

  4. Jika pengonversi lolos, mesin pengikatan memanggil setter properti sumber.

  5. Jika pengikatan memiliki yang ExceptionValidationRule terkait dengannya dan pengecualian dilemparkan selama langkah 3 atau 4, mesin pengikatan memeriksa untuk melihat apakah ada UpdateSourceExceptionFilter. Anda dapat menggunakan panggilan balik UpdateSourceExceptionFilter untuk menyediakan handler kustom untuk menangani pengecualian. UpdateSourceExceptionFilter Jika tidak ditentukan pada Binding, mesin pengikatan membuat ValidationError dengan pengecualian dan menambahkannya ke Validation.Errors koleksi elemen terikat.

Transfer nilai yang valid ke kedua arah (target ke sumber atau sumber ke target) akan menghapus Validation.Errors properti terlampir.

Konstruktor

ValidationError(ValidationRule, Object)

Menginisialisasi instans ValidationError baru kelas dengan parameter yang ditentukan.

ValidationError(ValidationRule, Object, Object, Exception)

Menginisialisasi instans ValidationError baru kelas dengan parameter yang ditentukan.

Properti

BindingInError

BindingExpression Mendapatkan objek atau MultiBindingExpression dari iniValidationError. Objek ditandai tidak valid secara eksplisit atau memiliki aturan validasi yang gagal.

ErrorContent

Mendapatkan atau mengatur objek yang menyediakan konteks tambahan untuk ini ValidationError, seperti string yang menjelaskan kesalahan.

Exception

Mendapatkan atau mengatur Exception objek yang menjadi penyebabnya ValidationError, jika kesalahan adalah hasil dari pengecualian.

RuleInError

Mendapatkan atau mengatur ValidationRule objek yang menjadi penyebabnya ValidationError, jika kesalahan adalah hasil dari aturan validasi.

Metode

Equals(Object)

Menentukan apakah objek yang ditentukan sama dengan objek saat ini.

(Diperoleh dari Object)
GetHashCode()

Berfungsi sebagai fungsi hash default.

(Diperoleh dari Object)
GetType()

Mendapatkan instans Type saat ini.

(Diperoleh dari Object)
MemberwiseClone()

Membuat salinan dangkal dari yang saat ini Object.

(Diperoleh dari Object)
ToString()

Mengembalikan string yang mewakili objek saat ini.

(Diperoleh dari Object)

Berlaku untuk

Lihat juga