cs_emmanuel9
Messages postés903Date d'inscriptionmercredi 23 février 2005StatutMembreDernière intervention16 juin 2010
-
21 déc. 2005 à 17:58
beny100
Messages postés213Date d'inscriptionvendredi 17 novembre 2006StatutMembreDernière intervention 1 avril 2009
-
19 déc. 2006 à 11:55
Bonjour à tous,
Voilà mon problème :
J'ai 10 comboboxs et pour chacun de ses comboboxs se trouve 5 objets personnes qui sont les mêmes. Les 10 comboboxs au départ on leur selectedindex = -1. Et je voudrais que quand, mettons, dans le comboboxs 1 je séléctionne la personne 1 alors la personne 1 ne sont plus présente dans la séléction des 9 autres comboxs et si le dans le comboboxs 1 je séléctionne la personne 2 alors la personne 2 n'est plus présente dans la selection des 9 autres comboboxs mais personne 1 se retrouvent presente dans leurs selection. Et idem pour tous les comboboxs en faite .
Quel est à votre avis la meilleur solution pour réaliser ça ?
sebmafate
Messages postés4936Date d'inscriptionlundi 17 février 2003StatutMembreDernière intervention14 février 201437 22 déc. 2005 à 09:23
si tu remplis les collections des combos avec les mêmes personnes...
tu peux faire ca :
Abonnes tous les évènements SelectedIndexChanged au même handler et met ce code : (pas testé, mais l'idée est là)
Protected void MesCbo_SelectedIndexChanged(object sender, EventArgs e) {
ComboBox cbo = sender as ComboBox;
if (cbo == null) return;
Personne oldItem = cbo.Tag as Personne;
Personne item = (Personne)cbo.SelectedItem;
/// on remet l'ancien item dans les autres combos
if (oldItem != null) {
foreach (Control c in this.Controls) { // ici j'utilise la collection de controles du formulaire, mais tu peux utiliser un arraylist
if (c is ComboBox && !c.Equals(c)) {
((ComboBox)c).Items.Add( item );
}
}
}
/// pour chaque combo différent de celui-ci
foreach (Control c in this.Controls) {
if (c is ComboBox && !c.Equals(c)) {
((ComboBox)c).Items.Remove( item );
}
}
cs_emmanuel9
Messages postés903Date d'inscriptionmercredi 23 février 2005StatutMembreDernière intervention16 juin 20102 22 déc. 2005 à 15:38
ah oui en faite tu prend la personne séléctionné et tu le met dans la tag qui est un emplacement mémoire pour stocker un objet et comme ca tu sais quel est l'ancienne personne séléctionné pour chaque combobox ?
beny100
Messages postés213Date d'inscriptionvendredi 17 novembre 2006StatutMembreDernière intervention 1 avril 2009 19 déc. 2006 à 11:55
j'ai un ComboBox avec 4 elements
qualityofServiceAlarm ,
communicationsAlarm ,equipmentAlarm ,environmentalAlarm
mais je ne connais pas le code qui me permet de savoir lequel d'entre les 4 est selectionnés.
je veux connaitre l'élément selectionné pour l'utiliser dans la suite de mon programme.
aidez moi avec le code SVP: