2016-08-20 3 views
1

Je souhaite concaténer le nom et le prénom de la table "personne" dans la zone de liste déroulante1. des solutions s'il vous plaît!afficher deux colonnes à partir d'un datatable dans la zone de liste déroulante

public MyForm() 
     { 
     InitializeComponent(); 
     combobox1_load(); 
     } 

    public void combobox1_load() 
    { 
     da = new SqlDataAdapter("select * from PERSONNE ", cn); 
     dt = new DataTable(); 
     try 
     { 
      cn.Open(); 
      da.Fill(dt); 
      comboBox1.DataSource = dt; 
      comboBox1.DisplayMember = "NOM_PERSONNE , PRENOM_PERSONNE"; 
      // comboBox1.ValueMember = "ID_PERSONNE"; 
     } 

     catch (Exception ex) 
     { 
      MessageBox.Show(ex.Message); 
     } 

     finally 
     { 
      cn.Close(); 
     } 


    } 

J'ai essayé de changer le SqlDataAdapter comme ça -> da = new SqlDataAdapter ("" select concat (NOM_PERSONNE, » », PRENOM_PERSONNE) de personne », cn); .. mais pas travaillant aussi !!

+0

Votre façon de concaténer les champs ensemble est la bonne, mais vous devez donner un nom à la concaténation résultante et utiliser ce nom dans la propriété DisplayMember – Steve

Répondre

0

RÉSOLU !!

public void combobox1_load() 
    { 
     da = new SqlDataAdapter("select concat(NOM_PERSONNE,' ',PRENOM_PERSONNE) as 'nom_prenom' from PERSONNE ", cn); 
     dt = new DataTable(); 
     try 
     { 
      cn.Open(); 
      da.Fill(dt); 
      comboBox1.DataSource = dt; 
      comboBox1.DisplayMember = "nom_prenom"; 
      // comboBox1.ValueMember = "ID_PERSONNE"; 
     } 

     catch (Exception ex) 
     { 
      MessageBox.Show(ex.Message); 
     } 

     finally 
     { 
      cn.Close(); 
     } 


    } 
0

essayer

da = new SqlDataAdapter("select NOM_PERSONNE,PRENOM_PERSONNE from PERSONNE ", cn); 

au lieu de

da = new SqlDataAdapter("select * from PERSONNE ", cn); 

et

comboBox1.DisplayMember = "NOM_PERSONNE" + "PRENOM_PERSONNE"; 

insted de

comboBox1.DisplayMember = "nom_prenom"; 
+0

J'ai essayé, mais tous les articles de la combobox sont comme ça -> Système .Data.DataRowView –

1

la requête SQL doit être comme ceci: "select concat (NOM_PERSONNE, » », PRENOM_PERSONNE) AS PERSONNEName de PERSONNE et l'élément d'affichage doit être : comboBox1.DisplayMember = "Nom PERSONNEL";