J'ai un formulaire avec ComboBox
qui fournit une liste déroulante. Sur la comboBox SelectedIndexChanged event
, je cours du code, mais je ne veux pas que ce code soit exécuté lors du chargement du formulaire. Malheureusement, lorsque je charge le formulaire (avant de faire une sélection dans la liste déroulante), SelectedIndexChanged
des combobox sont activés (je pense que lorsque la liste déroulante est databinding
). Y a-t-il un moyen d'éviter un tel comportement?
Réponses
Trop de publicités?Si vous souhaitez réagir uniquement lorsque l'utilisateur modifie l'élément sélectionné dans la liste déroulante, il est préférable de s'abonner à SelectionChangeCommitted .
Shantanu Gupta
Points
5678
Vous pouvez simplement dissocier l'événement SelectedIndexChanged
, appeler votre fonction fill
et lier à nouveau l'événement SelectedIndexChanged
. Malheureusement, cela ne fonctionne pas avec une grille.
Par exemple:
this.cmb.SelectionChanged -= new System.EventHandler(this.cmb_SelectionChanged);
cmb.fill(); //Your function
this.cmb.SelectionChanged += new System.EventHandler(this.cmb_SelectionChanged);
Ranjith
Points
21
llaaalu
Points
4