c#Combobox因点

时间:2017-05-04 14:40:04

标签: c# sql

这是给出错误的代码

        DataSet Music = new DataSet();
        Music= DBI.musicall();
        comboBox1.DisplayMember= "music1.name";   // with .
        comboBox1.ValueMember="Id";
        comboBox1.DataSource=Music.Tables[0];

这是正在运行的代码。

        DataSet Music = new DataSet();
        Music= DBI.musicall();
        comboBox1.DisplayMember= "music1name";  // no point -- no  . 
        comboBox1.ValueMember="Id";
        comboBox1.DataSource=Music.Tables[0];


  public static DataSet musicall()
    {
        SqlConnection connect= new SqlConnection(connectway);

        string sql = "select *from Music";
       SqlCommand command= new SqlCommand();
       command.CommandText=sql;
       command.Connection=connect;

        SqlDataAdapter adaptor = new SqlDataAdapter();
        adaptor.SelectCommand=command;
        DataSet finalDs= new DataSet();
        connect.Open();
        adaptor.Fill(finalDs);
        connect.Close();
        return finalDs;

    }

当我在列名中使用点(。)时,为什么会遇到此问题。

为什么当我在列名中使用“。”时,组合框会显示错误?

我可以在不使用“。”的情况下解决这个问题,但我不想那样解决这个问题。

1 个答案:

答案 0 :(得分:0)

而是这样做:

    DataSet Music = new DataSet();
    Music= DBI.musicall();
    comboBox1.DisplayMember= "music1name";  
    comboBox1.ValueMember="Id";
    comboBox1.DataSource=Music.Tables[0];

public static DataSet musicall()
{
    SqlConnection connect= new SqlConnection(connectway);

    string sql = "select [music1.name] AS music1name from Music";
   SqlCommand command= new SqlCommand();
   command.CommandText=sql;
   command.Connection=connect;

    SqlDataAdapter adaptor = new SqlDataAdapter();
    adaptor.SelectCommand=command;
    DataSet finalDs= new DataSet();
    connect.Open();
    adaptor.Fill(finalDs);
    connect.Close();
    return finalDs;

}