Problème avec un ListBox [Résolu]

Signaler
Messages postés
124
Date d'inscription
jeudi 5 juin 2003
Statut
Membre
Dernière intervention
10 février 2008
-
Messages postés
110
Date d'inscription
jeudi 7 octobre 2004
Statut
Membre
Dernière intervention
19 février 2009
-
Salut tout le monde, voici mon problème:

J'essais de mettre des sortes de valeurs cachées dans les items de mon ListBox

ex:
------------------------------
| Lebert <-- valeur:R45 |
| Thomas<-- valeur:T32 |
| ... |
| |
| |
| |
| |
-----------------------------

Il me semble avoir déjà lu la même question sur le forum où la réponse était de mettre la valeur dans valuefield si je me souviens bien, mais je ne trouve pas cette fonction.

Merci pour vos réponses

3 réponses

Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
85
tu peux faire qqch de ce genre :

une classe "conteneur" :
public class ListBoxItem
{
public ListBoxItem(string itemText, string itemValue)
{
m_itemText = itemText;
m_itemValue = itemValue;
}

private string m_itemText;
private string m_itemValue;

public string Text
{
get
{
return m_itemText;
}
}

public string Value
{
get
{
return m_itemValue;
}
}
}


ajout des items :
// spécifie la propriété dont le controle doit afficher la valeur
listBox.DisplayMember = "Text";

// remplissage
listBox.BeginUpdate();
listBox.Items.Add(new ListBoxItem("Lebert", "R45"));
listBox.Items.Add(new ListBoxItem("Thomas", "T32"));
listBox.EndUpdate();


exemple d'utilisation :
ListBoxItem item = (ListBoxItem)listBox.SelectedItem;
MessageBox.Show("Sélection : " + item.Text + " / " + item.Value);


Cocoricoooooooo !!!!
coq
MVP Visual C#
Messages postés
124
Date d'inscription
jeudi 5 juin 2003
Statut
Membre
Dernière intervention
10 février 2008

Ca marche super, merci beaucoup pour ton aide :)
Messages postés
110
Date d'inscription
jeudi 7 octobre 2004
Statut
Membre
Dernière intervention
19 février 2009

avant je faisait comme cela pour remplir m'a comboBox :

comboBox1.Items.Add(pers.ListPers.GetKey(i), pers.ListPers.GetByIndex(i));

mais avec ton objet comment je fais pour lui passer les deux élément de ma liste car ci-dessous fonctionne pas car pers.ListPers.GetKey(i) et pers.ListPers.GetByIndex(i))) renvoie des objet et non pas des string

comboBox1.Items.Add(new ListItem(pers.ListPers.GetKey(i), pers.ListPers.GetByIndex(i)));