C# remplir un tableau de string avec listbox

Résolu/Fermé
Signaler
-
Messages postés
32844
Date d'inscription
mercredi 29 août 2001
Statut
Modérateur
Dernière intervention
21 octobre 2019
-
Bonjour à tous et merci d' avance de me repondre,

Mon problème est de savoir comment remplir un tableau de string a l' aide d' elements se trouvant dans un listebox.

Ex:

string[] Tbl;
listbox ListBox1;

Etant donner que l' on a dejà remplis le listebox, comment affecter ses donnees dans le tableau Tbl?

merci encore de me repondre.

5 réponses

Messages postés
32844
Date d'inscription
mercredi 29 août 2001
Statut
Modérateur
Dernière intervention
21 octobre 2019
15 640
J'ai une préférence pour les arraylist:

ArrayList Tbl = new ArrayList();
foreach (ListItem item in lbTESTSSE.Items)
{
	Tbl.Add( item.Text );
}



Maintenant si c'est la valeur que tu veux récupérer (et non le texte):

ArrayList Tbl = new ArrayList();
foreach (ListItem item in lbTESTSSE.Items)
{
	Tbl.Add( item.Value);
}
7
Merci sebsauvage celà m' a donner une petite idée mais voici un autre problème, c ke je vois pas c que c koi un arraylist ensuite c koi ton ListItem?

Moi c le tableau de string que je veux remplir tel que montrer car ce tableau est ensuite utilisée dans une classe:

Voici comment:

private void button3_Click(object sender, System.EventArgs e)
{
lbCombinations.Items.Clear();

int n = listBox2.Items.Count;
int k = int.Parse(txtSubsetSize.Text);
Combination c = new Combination(n,k);

string[] result = new string[k];

while (c != null)
{
result = c.ApplyTo(Tableau);
StringBuilder sb = new StringBuilder();

for (int i = 0; i < result.Length; ++i)
{
sb.AppendFormat("{0} {1}", result[i], " ");
}
lbCombinations.Items.Add(sb.ToString());

c = c.Successor();
}
}

Ce code me permet en appelant une classe Combination d' avoir la combinaison mathematique des elements se trouvant dans le tableau.

Alors si tu peux utiliser exactement ce tableau definit comme string (string[] Tableau) et le remplir, je te serait très reconnaissant.

merci d' avance.
0
Messages postés
32844
Date d'inscription
mercredi 29 août 2001
Statut
Modérateur
Dernière intervention
21 octobre 2019
15 640
Merci sebsauvage celà m' a donner une petite idée mais voici un autre problème, c ke je vois pas c que c koi un arraylist ensuite c koi ton ListItem?

Essai de trouver quelques cours de C#.

Un ArrayList est un tableau de taille dynamique qui peut contenir n'importe quel type d'objets.

Ton tableau string[] est de taille fixe, et ne peut contenir que des strings.

ListBox1.Items renvoie une collection d'objets Item
J'utilise foreach pour les parcourir.
2
Messages postés
32844
Date d'inscription
mercredi 29 août 2001
Statut
Modérateur
Dernière intervention
21 octobre 2019
15 640
Bon pour ton tableau de Strings:

Tbl = new String[ListBox.Items.Count];
int index = 0
foreach (ListItem item in ListBox1.Items)
{
	Tbl[index] = item.Text;
	index++;
}


ça devrait te remplir ton tableau de chaînes.
1
Messages postés
32844
Date d'inscription
mercredi 29 août 2001
Statut
Modérateur
Dernière intervention
21 octobre 2019
15 640
Array appartient à System.Collections (qui contient également d'autres structures très utiles comme les Hashtables).

ListBox et ListItem appartiennent à System.Web.UI.WebControls (c'est à dire les éléments graphique que tu dépose dans ta page web).

Comme je l'ai dit ListBox.Items renvoie une collection d'objets ListItem.
Voir la doc sur MSDN pour la définition de ces objets.
1
Merci beaucoup là ca marche à merveille!!!

Si tu peux encore une fois me dire comment on declare le ListItem car il appartient au System.Array et j' arrive pas à le déclarer ainsi que son namespace.

Je vais chercher un livre pour mieux comprendre en même temps.

Merci encore et bon travail.

McLigth. (Que Dieu te garde).
0