CHARGER LES DONNÉES D'UNE TABLE DANS UN COMOBOX

Résolu
madrid79 Messages postés 15 Date d'inscription lundi 28 juillet 2008 Statut Membre Dernière intervention 19 août 2008 - 5 août 2008 à 15:44
Arthenius Messages postés 1182 Date d'inscription mercredi 21 janvier 2004 Statut Membre Dernière intervention 6 septembre 2011 - 5 août 2008 à 17:57
BONJOUR?
comment faire pour pour avoir dans un comobox tout les donnée d'un colonne d'une table A.
merci

14 réponses

Arthenius Messages postés 1182 Date d'inscription mercredi 21 janvier 2004 Statut Membre Dernière intervention 6 septembre 2011 14
5 août 2008 à 17:04
DataSet ds = new DataSet();
// Chaîne de connexion

string connectString = @"Data Source=RENNDXPRDL2596\SQLEXPRESS;Initial Catalog=hafid;Integrated Security=True";

// Objet connection

SqlConnection connection = new SqlConnection(connectString);

SqlDataAdapter Da_Table_Project  = new SqlDataAdapter( "SELECT ID_project FROM [Table_Project])", connection);
Da_Table_Project.Fill(ds, "Table_Project");

macombo.DataSource = ds.Tables["Table_Project"];
macombo.DisplayMember = "COL1";
macombo.ValueMember = "COL2";

<hr />Arthenius
"Ce qui ne me tue pas, me rend plus fort..."
3
Arthenius Messages postés 1182 Date d'inscription mercredi 21 janvier 2004 Statut Membre Dernière intervention 6 septembre 2011 14
5 août 2008 à 17:43
imaginons que tu est une zone compteur (comme cle primaire) et une zone libelle dans la meme table

en regle generale pour les humains derriere le clavier tu va afficher dans ta combo le libelle et stocker dans la base ton compteur

le valuemember sert a ca:

macombo.DisplayMember = "libelle";

macombo.ValueMember = "compteur";

tout depend comment sont structuré tes tables et ce que tu veux afficher

                                            compteur      libelle
ainsi pour un enregistrement 199558 ==> Tomates

tu affichera "Tomates" et stockera 199558 dans ta BDD (un peu plus parlant pour l'utilisateur qd meme :) )

<hr />Arthenius
"Ce qui ne me tue pas, me rend plus fort..."
3
cs_bellak Messages postés 136 Date d'inscription jeudi 27 décembre 2007 Statut Membre Dernière intervention 5 mai 2011
5 août 2008 à 15:48
la table d'une base de donnees ? , si c'est oui de quel type ? , il faut bien peciser
0
zakaroh Messages postés 42 Date d'inscription mercredi 23 avril 2008 Statut Membre Dernière intervention 23 août 2008 1
5 août 2008 à 15:53
désolé ,
oui c'est une base de sur sql server 2005..
en fait mon but c'est d'avoir une liste déroulante qui contient tout les donnée d'une colonne..
j'espère que je un peu plus claire

merci
0

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

Posez votre question
cs_bellak Messages postés 136 Date d'inscription jeudi 27 décembre 2007 Statut Membre Dernière intervention 5 mai 2011
5 août 2008 à 16:02
tu peux t'en servir avec les sources de "Arthenius" :
http://www.csharpfr.com/codes/CONNECTIONSTRING-SQL-SERVER-ACCESS-XML-PRESSE-PAPIER_23015.aspx 
et il y a d'autre de meme auteur .
bon dev , et merci "Arthenius"
0
Arthenius Messages postés 1182 Date d'inscription mercredi 21 janvier 2004 Statut Membre Dernière intervention 6 septembre 2011 14
5 août 2008 à 16:18
lol

meme plus besoin de faire la pub pour mes devs :)

merci ;)

<hr />Arthenius
"Ce qui ne me tue pas, me rend plus fort..."
0
madrid79 Messages postés 15 Date d'inscription lundi 28 juillet 2008 Statut Membre Dernière intervention 19 août 2008
5 août 2008 à 16:20
merci pour l'adresse, mais c'est pas vraiment ce que je veux
0
Arthenius Messages postés 1182 Date d'inscription mercredi 21 janvier 2004 Statut Membre Dernière intervention 6 septembre 2011 14
5 août 2008 à 16:21
je te conseil cet source qd meme :)
 
http://www.csharpfr.com/codes/EXEMPLE-UTILISATION-DATAGRID-DATAADAPTER-SELECT-SUR-BDD-AVEC_27738.aspx

sinon pour ton PB tu va devoir remplir un dataset avec un dataadapter

une fois ton dataset rempli tu defini le datasource de ta combo
ainsi que le displaymember et le Valuemember de ta combo (en mettant le nom de colonne que tu souhaite utiliser pour les 2 proprietes )

<hr />Arthenius
"Ce qui ne me tue pas, me rend plus fort..."
0
Arthenius Messages postés 1182 Date d'inscription mercredi 21 janvier 2004 Statut Membre Dernière intervention 6 septembre 2011 14
5 août 2008 à 16:24
un truc de ce genre :

ds.T_DEPOT1.Rows.Clear();
Da_T_DEPOT.Fill(ds.T_DEPOT1);
Cbo_DEPONUM_D.DataSource = ds.T_DEPOT1;
Cbo_DEPONUM_D.DisplayMember = "DEPOLIB";
Cbo_DEPONUM_D.ValueMember = "DEPONUM";

<hr />Arthenius
"Ce qui ne me tue pas, me rend plus fort..."
0
madrid79 Messages postés 15 Date d'inscription lundi 28 juillet 2008 Statut Membre Dernière intervention 19 août 2008
5 août 2008 à 16:52
merci Arthenius pour le lien,
zn fiat j'ai fait ca pour charger ma comobox mais ca ma rien donnée..

private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
// Chaîne de connexion
string connectString = @"Data Source=RENNDXPRDL2596\SQLEXPRESS;Initial Catalog=hafid;Integrated Security=True";
// Objet connection
SqlConnection connection = new SqlConnection(connectString);
// Ouverture
connection.Open();

SqlCommand command = new SqlCommand("SELECT ID_project FROM [Table_Project])", connection);
command.ExecuteNonQuery();

}
0
Arthenius Messages postés 1182 Date d'inscription mercredi 21 janvier 2004 Statut Membre Dernière intervention 6 septembre 2011 14
5 août 2008 à 16:58
ne place pas ton code sur le comboBox1_SelectedIndexChanged
car il changera que lorsque la combo sera rempli ===> met ca sur le form load de ta fenetre

sinon il te faut utiliser un sqldataadapter (regarde ma source pour te guider)

dans ton code tu ne fait qu'executer une requete sans en recuperer les donnees

avec le dataadapeter.Fill(ds.Tables["ma_table_pour_ma_combo"]);

tu excutera la requete et stockera le resultat dans la datatable "ma_table_pour_ma_combo"

au finale tu devra faire un

Cbo_DEPONUM_D.DataSource = ds.Tables["ma_table_pour_ma_combo"];
Cbo_DEPONUM_D.DisplayMember = "ma_colonne_a_afficher";
Cbo_DEPONUM_D.ValueMember = "ma_colonne_de_valeur";

<hr />Arthenius
"Ce qui ne me tue pas, me rend plus fort..."
0
madrid79 Messages postés 15 Date d'inscription lundi 28 juillet 2008 Statut Membre Dernière intervention 19 août 2008
5 août 2008 à 17:34
merci ca marche, j'ai une question ;
ca m eserty a quoi cette ligne :
macombo.ValueMember = "COL2";


moi je l'ai enlevé.

merci
0
madrid79 Messages postés 15 Date d'inscription lundi 28 juillet 2008 Statut Membre Dernière intervention 19 août 2008
5 août 2008 à 17:54
j'ai compris le concept, merci pour l'explication est ce que c'est possible d'afficher et stocker la même chose. Dans mon cas je veux afficher et stocker la même chose
0
Arthenius Messages postés 1182 Date d'inscription mercredi 21 janvier 2004 Statut Membre Dernière intervention 6 septembre 2011 14
5 août 2008 à 17:57
oui rien ne l'empeche

de rien :)

<hr />Arthenius
"Ce qui ne me tue pas, me rend plus fort..."
0
Rejoignez-nous