将DataGridView绑定到DataSet会直接失败

时间:2010-11-04 22:18:54

标签: c# .net winforms data-binding datasource

此代码绑定的DataGridView不会按预期显示信息:

dataGridView1.DataSource = ds;

这是ds:

的代码
public DataSet ConnectandReadList()
        {
            DataSet ds = new DataSet();

            string connection_string="Data Source=hermes;database=qcvalues; Integrated Security=SSPI;";            

            using (var myConnection = new SqlConnection(connection_string))
            {

                myConnection.Open();
                var command = new SqlCommand(InitializeQuery(), myConnection);
                var adapter = new SqlDataAdapter(command);

                adapter.Fill(ds);
            }


            return ds;
        }

2 个答案:

答案 0 :(得分:4)

尝试绑定到数据集内的表:dataGridView1.DataSource = ds.Tables[0];

DataGridView.DataSource属性的文档中,您还可以绑定到DataSet并使用DataMember属性:

  

绑定到包含多个列表或表的数据源时,必须将DataMember属性设置为指定要绑定到的列表或表的字符串。

我认为在这种情况下,表名称将是“Table”,因为您没有明确地命名它。

答案 1 :(得分:3)

ds是DataSet吗?

如果是这样,请尝试将DGV的DataMember设置为DataSet中的DataTable,或者为DataSource指定DataSet的DataTable。