C# remplir un tableau de string avec listbox

Résolu/Fermé
mcligth - 8 déc. 2005 à 11:00
sebsauvage Messages postés 32893 Date d'inscription mercredi 29 août 2001 Statut Modérateur Dernière intervention 21 octobre 2019 - 8 déc. 2005 à 17:16
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

sebsauvage Messages postés 32893 Date d'inscription mercredi 29 août 2001 Statut Modérateur Dernière intervention 21 octobre 2019 15 655
8 déc. 2005 à 11:42
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
sebsauvage Messages postés 32893 Date d'inscription mercredi 29 août 2001 Statut Modérateur Dernière intervention 21 octobre 2019 15 655
8 déc. 2005 à 15:56
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
sebsauvage Messages postés 32893 Date d'inscription mercredi 29 août 2001 Statut Modérateur Dernière intervention 21 octobre 2019 15 655
8 déc. 2005 à 15:58
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
sebsauvage Messages postés 32893 Date d'inscription mercredi 29 août 2001 Statut Modérateur Dernière intervention 21 octobre 2019 15 655
8 déc. 2005 à 17:16
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

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
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