Listbox en C#

matsumato Messages postés 42 Date d'inscription vendredi 14 mars 2008 Statut Membre Dernière intervention 7 avril 2011 - 19 avril 2008 à 21:09
matsumato Messages postés 42 Date d'inscription vendredi 14 mars 2008 Statut Membre Dernière intervention 7 avril 2011 - 22 avril 2008 à 18:59
Bonjour à tous;
je suis entrain de construire une application en C# et un mement je veux calculer la somme des notes enregestré sur une listbox mais jai aucune aider comment faire. en vb6 c'est façile mais là je me suis coincer.
merci d'avance pour m'aider.

12 réponses

cs_Bidou Messages postés 5486 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
19 avril 2008 à 21:24
Bonjour,
Il suffit d'itérer à travers les items de la listbox en les aditionnant.
Il divise ensuite la somme par le nombre d'élément, facile non?

genre:
int sum = 0;
foreach(var x in mylist)
{
  sum += x;
}

var result = sum / count;

<hr />
-My Blog-
bubbathemaster Messages postés 339 Date d'inscription dimanche 26 janvier 2003 Statut Membre Dernière intervention 25 mars 2009 4
19 avril 2008 à 21:26
Et pourquoi ce serait difficile à faire en C# ?

int total=0;
foreach(object o in listBox1.Items)
{
     total += int.Parse((string)o);
}

En supposant que tu veux additioner des entiers sauvegardés dans ta liste en chaines de caractères.
bubbathemaster Messages postés 339 Date d'inscription dimanche 26 janvier 2003 Statut Membre Dernière intervention 25 mars 2009 4
19 avril 2008 à 21:32
Damned, Bidou est plus rapide :/

Mon dieu que c'est moche et non lisible ce "var".
matsumato Messages postés 42 Date d'inscription vendredi 14 mars 2008 Statut Membre Dernière intervention 7 avril 2011
20 avril 2008 à 19:59
merci à vous;
mais quand j'exécute le programme, alors là le programme s'arret et il y a une erreur de type:( Impossible d'effectuer un cast d'un objet de type 'System.Double' en type 'System.String'.
donc et voila le code.
double SOM = 0;
int nb = listBox1.Items.Count;
foreach (object o in listBox1.Items)
{
SOM += double.Parse((string)o);
}
les elements sont de type double.
merci bcp à tous le monde pour l'aide.

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

Posez votre question
matsumato Messages postés 42 Date d'inscription vendredi 14 mars 2008 Statut Membre Dernière intervention 7 avril 2011
20 avril 2008 à 20:02
dsl pour la mise en forme :

double SOM = 0;

int nb = listBox1.Items.Count;

foreach (object o in listBox1.Items)

{

SOM += double.Parse((string)o);

}
matsumato Messages postés 42 Date d'inscription vendredi 14 mars 2008 Statut Membre Dernière intervention 7 avril 2011
20 avril 2008 à 20:07
aaah le prb que je fait copier coler le code alorq voilà:
double SOM = 0;
int nb = listBox1.Items.Count;
foreach (objet o in listBox1.Items)
{
SOM += double.Parse((string)o);
}
dsl encore ;)
matsumato Messages postés 42 Date d'inscription vendredi 14 mars 2008 Statut Membre Dernière intervention 7 avril 2011
20 avril 2008 à 20:09
j'arreve pas à écrire correctements je n'ai marre.
et je peux pas supprimer les messages dans le forum ;(
matsumato Messages postés 42 Date d'inscription vendredi 14 mars 2008 Statut Membre Dernière intervention 7 avril 2011
20 avril 2008 à 20:11
voila mes amis le famous code:
double SOM = 0;
int nb = listBox1.Items.Count;
foreach (objet o in listBox1.Items)
{
SOM += double.Parse((string)o);
}
;)
Liverion Messages postés 296 Date d'inscription mardi 22 avril 2008 Statut Membre Dernière intervention 18 août 2008
22 avril 2008 à 15:14
Si il te donne l'erreur "Impossible d'effectuer un cast d'un objet de type 'System.Double' en type 'System.String'.", as tu essayé d'enlever le cast en string ?
matsumato Messages postés 42 Date d'inscription vendredi 14 mars 2008 Statut Membre Dernière intervention 7 avril 2011
22 avril 2008 à 15:25
OK, et merci bcp pour la réponse ;)
Liverion Messages postés 296 Date d'inscription mardi 22 avril 2008 Statut Membre Dernière intervention 18 août 2008
22 avril 2008 à 15:33
Ca fonctionne ?
matsumato Messages postés 42 Date d'inscription vendredi 14 mars 2008 Statut Membre Dernière intervention 7 avril 2011
22 avril 2008 à 18:59
oui ça va maintenent et voila le code:private void button5_Click(object sender, EventArgs e)
{
//enregestrer les donner depuis une listbox ds un fichier texte
StreamWriter sw = new StreamWriter(@"c:\fifi.txt");
foreach (Object o in listBox1.Items)
{
sw.WriteLine(double.Parse(o.ToString()));//double.Parse(listBox1.Items[i].ToString()));
}
sw.Close();
}

private void button6_Click(object sender, EventArgs e)
{
//charger un fichier texte sur une listbox
listBox1.Items.Clear();
StreamReader sr = new StreamReader(@"c:\fifi.txt");
while (!sr.EndOfStream)
{
listBox1.Items.Add(sr.ReadLine());
}
sr.Close();
}
Rejoignez-nous