cs_algsoft
Messages postés8Date d'inscriptionlundi 25 décembre 2000StatutMembreDernière intervention22 décembre 2008
-
10 déc. 2008 à 13:10
cs_algsoft
Messages postés8Date d'inscriptionlundi 25 décembre 2000StatutMembreDernière intervention22 décembre 2008
-
17 déc. 2008 à 20:57
Bonjour;
j'ai un p'tit soucie avec le C# pour l'utilisation d'une combobox.
En effet, quand je recupere la valeur selectionné apartir de la comboBox ,et la comparer avec une autre valeur de type int ;une erreur va generer ,et voici l'éreur "Specified cast is not valid."
code:
if ((double)comboBox1.Items[comboBox1.SelectedIndex] == 0.1)
j = 0;
MessageBox.Show("j=" + j + "\n a=" + comboBox1.Items[comboBox1.SelectedIndex]);
merci d'avance.
kerma26
Messages postés36Date d'inscriptionvendredi 11 mai 2007StatutMembreDernière intervention20 août 2009 10 déc. 2008 à 17:13
Oui normal que tu ne passe pas dans ta condition puisque tu lui demande de comparer le numéros de ta liste de comboBox et cela ne peut-être qu'un entier, en clair :
tu as ta comboBox avec tes items dedans :
-choix1 -> va correspondre à 0 pour ton SelectedIndex
-choix2 -> va correspondre à 1
....
Donc pour ce que tu veux faire il bien que tu compare le contenu de ce choix, donc de tête ça va donner un truc du genre :
if ( (double.Parse(comboBox1.SelectedIndex.ToString())) == 0.1 )
j++;
Comme ça là tu prend la valeur de ton choix que tu convertie en String (avec ToString()), pour pouvoir la convertir en double (avec double.Parse()), pour enfin pouvoir la comparer avec ton 0.1.
kerma26
Messages postés36Date d'inscriptionvendredi 11 mai 2007StatutMembreDernière intervention20 août 2009 10 déc. 2008 à 13:58
Salut,
Oui je crois que ton cast n'est pas bon :
if ((double)comboBox1.Items[comboBox1.SelectedIndex] == 0.1)
je crois que c'est plutôt comme tu as oublié des parenthèses :
if ((double)(comboBox1.Items[comboBox1.SelectedIndex]) == 0.1)
ou sinon essai de parser la valeur de ta comboBox, un truc du style :
if( (double.Parse(string) == 0.1 );
cs_algsoft
Messages postés8Date d'inscriptionlundi 25 décembre 2000StatutMembreDernière intervention22 décembre 2008 10 déc. 2008 à 15:49
J'ai un autre pb aussi;
voici le code :
decimal a,b;
Valeur[] tab = (Valeur[])tabList.ToArray().Clone();//tab est un tableau de type structure valeur qui a deux param X et Y
a = FonctionsStatistiques.A(tab, tabList.Count);/*Appelle de la fonction A*/
b = FonctionsStatistiques.B(tab, tabList.Count);/*Appelle de la fonction B*/
for (int k = 0; k < tabList.Count; k++)
tabybar[k] = a + b * tab[k].X;
Erreur :
Object reference not set to an instance of an object.
cs_algsoft
Messages postés8Date d'inscriptionlundi 25 décembre 2000StatutMembreDernière intervention22 décembre 2008 10 déc. 2008 à 16:57
merci pour votre réponse [../auteur/KERMA26/1059292.aspx kerma26];
j ai essayer avec ça et le problème de cast est réglé :
if(comboBox1.SelectedIndex == 0.1)
j=j+1;
mais le programme n'exécute jamais la condition ,la valeur de j ne change pas pourtant la condition est verifié.
Vous n’avez pas trouvé la réponse que vous recherchez ?