[VS2003] problème avec SelectedIndexChanged du comboBox
2 réponses
okpwal
Bonjour,
J'ai rempli un datagrid connecté à un datatable, j'ai également un
comboBox qui me permet de filtre les données affichées par mon dataGrid
par un dataview.
Mon problème est que l'événement SelectedIndexChanged du comboBox me
génère une erreur ; par contre si je le bypasse, le reste fonctionne
bien. Je soupconne que l'événement SelectedIndexChanged est appelé
avant que le processus d'initialisation soit complet.
Y a-t-il un moyen de savoir si un binding est en cours ou si une
référence est null ? Comment intercepter le fait que l'initialisation
n'est pas terminée avant de rendre la main au comboBox ?
Si un spécialiste du C# pouvais m'aider !
Merci.
G.
J'ai eu un soucis identique. l'événement SelectedIndexChanged est bien appelé à l'initialisation.
J'utilise donc l'evenement "SelectionChangeCommitted" qui n'est appelé que lorsque l'utilisateur effectue un véritable choix avec la combobox.
J'espère que ceci pourra t'aider.
okpwal
> J'ai eu un soucis identique. l'événement SelectedIndexChanged est bien appelé à l'initialisation.
J'utilise donc l'evenement "SelectionChangeCommitted" qui n'est appelé que lorsque l'utilisateur effectue un véritable choix avec la combobox.
J'espère que ceci pourra t'aider.
Je te remercie pour cette astuce, effectivement je soupçonnais sans bien sans pouvoir le démontrer que l'événement SelectedIndexChanged est bien appelé durant l'initialisation de la comboBox, ce qui est con ! Ce que j'ai fait, c'est d'inverser l'ordre de chargement de mes objets de manière à m'assurer que le dataGrid est chargé avant le comboBox. Cependant j'aurai bien aimé savoir comment tester si une opération de binding est en cours ? quelque chose du genre if(Binding in process sur dataGrid) return; mais bon on fait avec. Merci. G.
-- okpwal la perdrix !
> J'ai eu un soucis identique. l'événement SelectedIndexChanged est
bien appelé à l'initialisation.
J'utilise donc l'evenement "SelectionChangeCommitted" qui n'est appelé
que lorsque l'utilisateur effectue un véritable choix avec la
combobox.
J'espère que ceci pourra t'aider.
Je te remercie pour cette astuce, effectivement je soupçonnais sans
bien sans pouvoir le démontrer que l'événement SelectedIndexChanged est
bien appelé durant l'initialisation de la comboBox, ce qui est con !
Ce que j'ai fait, c'est d'inverser l'ordre de chargement de mes objets
de manière à m'assurer que le dataGrid est chargé avant le comboBox.
Cependant j'aurai bien aimé savoir comment tester si une opération de
binding est en cours ? quelque chose du genre
if(Binding in process sur dataGrid) return;
mais bon on fait avec. Merci.
G.
> J'ai eu un soucis identique. l'événement SelectedIndexChanged est bien appelé à l'initialisation.
J'utilise donc l'evenement "SelectionChangeCommitted" qui n'est appelé que lorsque l'utilisateur effectue un véritable choix avec la combobox.
J'espère que ceci pourra t'aider.
Je te remercie pour cette astuce, effectivement je soupçonnais sans bien sans pouvoir le démontrer que l'événement SelectedIndexChanged est bien appelé durant l'initialisation de la comboBox, ce qui est con ! Ce que j'ai fait, c'est d'inverser l'ordre de chargement de mes objets de manière à m'assurer que le dataGrid est chargé avant le comboBox. Cependant j'aurai bien aimé savoir comment tester si une opération de binding est en cours ? quelque chose du genre if(Binding in process sur dataGrid) return; mais bon on fait avec. Merci. G.