2009-12-03 6 views
0

Lors de l'utilisation DataBindings avec OnPropertyChanged comme updateDataSourceMode la source de données est mise à jour 2 fois (OnPropertyChanged et OnValidation): 1- après TextChanged de zone de texte, CheckedChanged de case à cocher, SelectedValueChanged pour comboBox. .. 2- après validationDataBindings avec OnPropertyChanged que updateSourceMode mettre à jour deux fois la source de données

Je vous expliquerai plus avec un exemple: supposons que nous avons une classe d'employés avec une propriétée booléen ismanager cette propriétée est limitée à une case à cocher sous une forme de cette manière: checkboxIsMgr.DataBindings. Ajouter ("Vérifié", employé, "IsManager", false, OnPropertyChanged); Lorsque checkboxIsMgr est coché/décoché, le settie IsManager est appelé et lorsque vous passez à un autre contrôle (la case à cocher perd le focus et l'événement Validation est appelé), le settie IsManager est appelé à nouveau. Comment puis-je éviter la deuxième mise à jour de la source de données sans modifier updateDataSourceMode en OnValidation?

Meilleures salutations

Répondre

2

Cela peut être fait en réglant la propriétée CausesValidation pour le contrôle false, cette empêcher source de données soit mise à jour deuxième fois mais cela empêche également l'événement Validating à soulever !!

Questions connexes