Databinding Objet et Actualisation propriété du contrôle lié
vincentbost
Messages postés2Date d'inscriptionmardi 3 mars 2009StatutMembreDernière intervention16 juin 2011
-
16 juin 2011 à 15:54
vincentbost
Messages postés2Date d'inscriptionmardi 3 mars 2009StatutMembreDernière intervention16 juin 2011
-
16 juin 2011 à 18:09
Bonjour,
Je travaille avec VS 2010 - Cible Framework 4.0
J'ai implémenté la notification de changement de valeurs de propriété au niveau de mon type métier.
La notification fonctionne bien mais les contrôles dont les propriétés sont liées ne sont pas tous correctement actualisés. En fait, la dernière notification reçue par le moteur de binding ne déclenche pas de raffraichissement de la propriété Text de ma boite de texte.
Ce gestionnaire me permet de m'assurer que les notifications sont faites pour toutes les propriétés modifiées
salarie.PropertyChanged += new PropertyChangedEventHandler(salarie_PropertyChanged);
txtMatricule.DataBindings.Add("Text", salarie, "Matricule");
txtNom.DataBindings.Add("Text", salarie, "Nom");
txtPrenom.DataBindings.Add("Text", salarie, "Prenom");
void salarie_PropertyChanged(object sender, PropertyChangedEventArgs e)
{
MessageBox.Show(string.Format("la propriété {0} a été modifiée",e.PropertyName));
}
Avez-vous une solution à ce problème ?
Cordialement
Vincent Bost
Formateur Etudes et Développement Informatique
A voir également:
Databinding Objet et Actualisation propriété du contrôle lié
vincentbost
Messages postés2Date d'inscriptionmardi 3 mars 2009StatutMembreDernière intervention16 juin 2011 16 juin 2011 à 18:09
Merci Sébastien,
J'avais déjà réalisé ce test dans deux contextes dont un avec un composant BindingSource. Je souhaite ainsi montrer à mes stagiaires l'intérêt d'avoir un objet d'indirection.
Cela ne fonctionne pas mieux, quel que soit l'événement retenu pour la modification de l'objet (validating ou update). Cette propriété n'a pas d'ailleurs d'effet sur le way objet - source - contrôle.
Je continue les tests demain et te tiens au courant.
Je vais les faire aussi dans une autre version d'IDE (2008/2005)
Merci pour la réponse.
Cordialement
Vincent Bost
Formateur Etudes et Développement Informatique