Validation.Error Kejadian Terlampir
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Terjadi ketika elemen terikat mengalami kesalahan validasi, tetapi hanya untuk pengikatan dengan nilai yang NotifyOnValidationError diatur ke true.
see AddErrorHandler, and RemoveErrorHandler
see AddErrorHandler, and RemoveErrorHandler
see AddErrorHandler, and RemoveErrorHandler
Keterangan
Model pengikatan data WPF memungkinkan Anda untuk mengaitkan ValidationRules dengan objek Anda Binding . Validasi terjadi selama pengikatan transfer nilai sumber target-ke-pengikatan sebelum pengonversi dipanggil. Berikut ini menjelaskan proses validasi:
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 kustom ValidationRuleyang ditentukan untuk itu Binding, dalam hal ini memanggil Validate metode pada masing-masing ValidationRulehingga salah satu dari mereka mengalami kesalahan atau sampai semuanya berlalu.
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 NotifyOnValidationError , jika properti diatur Binding ketrue, maka mesin pengikatan menaikkan Validation.Error peristiwa yang terpasang pada elemen .Jika semua aturan lolos, mesin pengikatan kemudian memanggil pengonversi, jika ada.
Jika pengonversi lolos, mesin pengikatan memanggil setter properti sumber.
Jika pengikatan memiliki yang ExceptionValidationRule terkait dengannya dan pengecualian dilemparkan selama langkah 4, mesin pengikatan memeriksa untuk melihat apakah ada UpdateSourceExceptionFilter. Anda memiliki opsi untuk menggunakan UpdateSourceExceptionFilter panggilan balik 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.
Perhatikan juga bahwa transfer nilai yang valid ke arah baik (target-ke-sumber atau sumber-ke-target) menghapus Validationproperti .Errors terlampir.
Untuk informasi selengkapnya, lihat "Validasi Data" di Gambaran Umum Pengikatan Data.
Informasi Peristiwa Yang Dirutekan
| Item | Nilai |
|---|---|
| Bidang pengidentifikasi | ErrorEvent |
| Strategi perutean | Menggelegak |
| Delegasi | EventHandler<TEventArgs>, dibatasi oleh ValidationErrorEventArgs |