Remplir un combo avec un ArrayList

francesdereve Messages postés 75 Date d'inscription mardi 6 décembre 2005 Statut Membre Dernière intervention 6 août 2007 - 6 janv. 2006 à 21:28
francesdereve Messages postés 75 Date d'inscription mardi 6 décembre 2005 Statut Membre Dernière intervention 6 août 2007 - 11 janv. 2006 à 21:20
J'ai une forme qui contienty un combobox,j'ai une classe ou j'ai une methode qui selectionne tous les noms de personne dans une base.La methode retournr un arrayList.
Quand dans la forme qui a le combo j'essaie d'ajouter l'arrayList dans le combobox,je n'arrive pas.Il semble j'ai une erreur de casting.
Voici le bout de code
ArrayList p=s.recuperernom();
for(int i=0;i<=p.count;i++){
comboBox1.Items.addRange(p);
}
Mais ca ne marche pas
FD

4 réponses

cs_thebigboss Messages postés 216 Date d'inscription jeudi 30 janvier 2003 Statut Membre Dernière intervention 12 avril 2017 2
6 janv. 2006 à 21:59
Essaye peut-être quelque chose du genre:


foreach(string str
in p
) this
.comboBox1
.Items
.Add(str
);
0
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
6 janv. 2006 à 22:44
Salut,

Ou alors
ArrayList p=s.recuperernom();
for(int i=0;i<=p.count;i++){
comboBox1.Items.Add(p[i]);
}

ou alors

ArrayList p=s.recuperernom();
comboBox1.Items.AddRange(p);

/*
coq
MVP Visual C#
*/
0
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
7 janv. 2006 à 13:14
Ou encore :



this.comboBox.DataSource = myArrayList;

En overridant si nécessaire la méthode ToString() pour avoir l'affichage désiré.


<HR>

[Pub] http://www.csharpfr.com/auteurdetail.aspx?ID=13319 [\Pub]
C# forever
0
francesdereve Messages postés 75 Date d'inscription mardi 6 décembre 2005 Statut Membre Dernière intervention 6 août 2007
11 janv. 2006 à 21:20
J'ai eassayé les 3 solutions proposées ca ne marche pas
//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
0
Rejoignez-nous