Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/303.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在组合框中显示数据表中的两列_C#_Database_Winforms_Combobox_Datatable - Fatal编程技术网

C# 在组合框中显示数据表中的两列

C# 在组合框中显示数据表中的两列,c#,database,winforms,combobox,datatable,C#,Database,Winforms,Combobox,Datatable,我想将表“person”中的姓名和姓氏连接到combobox1中。 任何解决方案请 我试图像那样更改sqldataadapter-> da=新的SqlDataAdapter(“从PERSONNE中选择concat(NOM_PERSONNE)”,PRENOM_PERSONNE),cn)。。 但是它不太管用!!试试这个 da = new SqlDataAdapter("select NOM_PERSONNE,PRENOM_PERSONNE from PERSONNE ", cn); 而不是 da

我想将表“person”中的姓名和姓氏连接到combobox1中。 任何解决方案请

我试图像那样更改sqldataadapter-> da=新的SqlDataAdapter(“从PERSONNE中选择concat(NOM_PERSONNE)”,PRENOM_PERSONNE),cn)。。 但是它不太管用!!

试试这个

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

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

代替

comboBox1.DisplayMember = "nom_prenom";

SQL查询应该是这样的:“从PERSONNE中选择concat(NOM_PERSONNE,,,PRENOM_PERSONNE)作为personename 显示成员应为: comboBox1.DisplayMember=“personName”

已解决

   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();
        }


    }

我试过了,但是组合框的所有项都是->System.Data.DataRowView将字段连接在一起的方法是正确的,但是您应该为结果连接指定一个名称,并在DisplayMember属性中使用该名称
comboBox1.DisplayMember = "nom_prenom";
   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();
        }


    }