Remplir un comboBox avec un arrayList [Résolu]

francesdereve 75 Messages postés mardi 6 décembre 2005Date d'inscription 6 août 2007 Dernière intervention - 11 janv. 2006 à 21:34 - Dernière réponse : ambts 4 Messages postés mardi 19 octobre 2010Date d'inscription 8 avril 2011 Dernière intervention
- 30 avril 2010 à 00:12
J'ai eassayé les 3 solutions proposées ca ne marche pas
1ere solution: foreach(string str
in p
) this
.comboBox1
.Items
.Add(str
);
2 eme sol: ArrayList p=s.recuperernom();
for(int i=0;i<=p.count;i++){
comboBox1.Items.Add(p[i]);
3 eme sol:


this.comboBox.DataSource = myArrayList;

//voici la methode qui recherche la liste des codes dans la base
public static ArrayList listcode(){
ArrayList l=
new ArrayList();
OdbcConnection con=
new OdbcConnection("DSN=source2");
con.Open();

string req="select code from personne;";
OdbcCommand com=
new OdbcCommand(req,con);

//com.Connection=con;
OdbcDataReader r=com.ExecuteReader();

while(r.Read())
{

string p =r.GetString(4);
l.Add(p);
}

return l;
}



//methode qui devrait afficher la liste des codes dans le combo a chaque clic
private void comboBox1_Click(object sender, System.EventArgs e){
try{
ArrayList p=Classverifier.listcode();
foreach(string s in p){
this.comboBox1.Items.Add(s);}
}catch(Exception ex){MessageBox.Show(ex.Message);}
}

Mais quand j'essaie avec les 3 solutions proposées ca me donne le message Index was outside the bounds of the array
FD

FD
Afficher la suite 

5 réponses

Répondre au sujet
Mithrandir51 12 Messages postés mardi 3 janvier 2006Date d'inscription 3 février 2006 Dernière intervention - 12 janv. 2006 à 17:52
+3
Utile
As-tu absolument besoin de ton arrayList car tu peux envoyer a ta méthode ton objet combobox qui se rempliera automatiquement

public listcode(ComboBox cmbCodes){//Passge du comboBox en parametre
OdbcConnection con=new OdbcConnection("DSN=source2");
con.Open();
string req="select code from personne;";
OdbcCommand com=new OdbcCommand(req,con);
OdbcDataReader r=com.ExecuteReader();
while(r.Read())
{
cmbCodes.Items.Add(r.GetString(4)); //Ici tu remplis ton comboBox
}

ensuite tu appeles ta methode comme ça

Classverifier.listcode(comboBox1);
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de Mithrandir51
TheSaib 2369 Messages postés mardi 17 avril 2001Date d'inscription 26 décembre 2007 Dernière intervention - 11 janv. 2006 à 23:31
0
Utile
Ton exception elle doit se lever là :

string p =r.GetString(4);

Est tu sûr de ton index ? attention ca commence à 0. C'est a priori l'unique endroit ou tu peux planter.

::|The S@ib|::
MVP C#.NET
Commenter la réponse de TheSaib
sebmafate 4947 Messages postés lundi 17 février 2003Date d'inscription 14 février 2014 Dernière intervention - 12 janv. 2006 à 08:45
0
Utile
hum...

2ème solution :

for(int i=0;i<=p.count;i++){ <--- ici le = est à supprimer
comboBox1.Items.Add(p[i]);

Sébastien FERRAND
[MVP C#]
Commenter la réponse de sebmafate
TheSaib 2369 Messages postés mardi 17 avril 2001Date d'inscription 26 décembre 2007 Dernière intervention - 12 janv. 2006 à 23:19
0
Utile
J4avais meme pas vu qu'il y avait du code tout en haut.

::|The S@ib|::
MVP C#.NET
Commenter la réponse de TheSaib
ambts 4 Messages postés mardi 19 octobre 2010Date d'inscription 8 avril 2011 Dernière intervention - 30 avril 2010 à 00:12
0
Utile
salu g besion daide aussi je vx remplir un combobox à partir d'un fichier texte chargé dans une arrylist
Commenter la réponse de ambts

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.