Contôles DataBindés : Mon calcul ne se lance pas au bon moment. [Résolu]

Signaler
Messages postés
140
Date d'inscription
samedi 5 mars 2011
Statut
Membre
Dernière intervention
13 août 2013
-
Messages postés
140
Date d'inscription
samedi 5 mars 2011
Statut
Membre
Dernière intervention
13 août 2013
-
Bonjour à tous,
J'ai un problème avec les liaisons de données. j'ai un Datagridview ainsi que des contrôles, l'ensemble étant Databindés sur un BindingSource, jusque là tous va bien. J'intercepte également les évènements de tous contrôles qui se déclenchent lorsque l'utilisateur change une de leurs valeurs, le but étant de lancer un calcul à partir des valeurs de ces contrôles, le résultat étant retourné sur un champ de la ligne courante de mon dataGridView.
Problème : Lorsque l'utilisateur change de ligne en cliquant sur le DatagridView cela déclenche tous les évènements des contrôles en cascade en commencent par le contrôle 1 jusqu'au contrôle x. Le calcul se lance alors dès que survient l’évènement de 1er contôle, a ce moment la il faut comprendre que seule la valeur du 1er contrôle est valide, les valeurs des autres contrôles n'étant pas encore actualisés (ils correspondent aux valeurs de la ligne précédentes).
J'aimerais savoir si il existe une propriété ou un évènement pour qui savoir si les contrôles ont terminés l'actualisation de leurs valeurs ou à défaut savoir si les évènements sont déclenchés par le code ou par l'utilisateur ?

Merci beaucoup si vous pouvez m'aider.

2 réponses

Messages postés
140
Date d'inscription
samedi 5 mars 2011
Statut
Membre
Dernière intervention
13 août 2013

ReBonjour,
J'ai trouvé une solution mais qui ne réponds qu'en partie à mon problème.
Pour les combobox j'utilise cet évènement qui ne se déclenche que sur une action utilisateur :
ComboBoxTYPE.SelectionChangeCommitted


Par contre je ne trouve pas d’équivalent pour les textBox, il faudrait que l’évènement TextChange ne se déclenche que sur une action utilisateur mais ce n'est pas le cas.
C'est moi qui m'y prends mal ? Ces évènements c'est pratique mais c'est une vrai galère pour les désactiver quand on n'en a pas besoin .
Je connais
RemoveHandler Controle.évenement, AdressOf NomdelaProcedure
mais hélas si je désactive les contrôles il ne fonctionnerons pas non plus sur une action utilisateur.
Messages postés
140
Date d'inscription
samedi 5 mars 2011
Statut
Membre
Dernière intervention
13 août 2013

Textbox.KeyDown
: (Mon dieu ou est-je la tête......