Datagridview不能显示数据表

本文关键字:数据表 显示 不能 Datagridview | 更新日期: 2023-09-27 17:50:05

我有这个类(AddRecord)的方法来返回一个数据表:

public DataTable SelectRec(ComboBox cb, DateTimePicker dtp1, DateTimePicker dtp2)
{
    SqlDataAdapter sqladpt = new SqlDataAdapter();
    SqlConnection conn = new SqlConnection(connectionStrings);
    DataTable dt = new DataTable();
    try
    {
        conn.Open();
        SqlCommand myCmd = conn.CreateCommand();
        myCmd.CommandType = CommandType.StoredProcedure;
        myCmd.CommandText = "SelectAccountRecord";
        myCmd.Parameters.AddWithValue("@date1", dtp1.Text);
        myCmd.Parameters.AddWithValue("@date2", dtp1.Text);
        myCmd.Parameters.AddWithValue("@newspaper", cb.Text);
        myCmd.ExecuteNonQuery();
        sqladpt.SelectCommand = myCmd;
        sqladpt.Fill(dt);
        sqladpt.Dispose();
        //DataSource = ds.Tables["[a]"].DefaultView;
    }
    catch { }
    return dt;
}

我调用这个方法在datagridview中显示数据表的内容如下

AddRecord ad = new AddRecord();
dgvRecorOverview.DataSource= ad.SelectRec(cbNewspaperRO, dtpFromDate, dtpToDate);

请帮忙!

Datagridview不能显示数据表

在分配DataSource后,您已经为您的网格赋予了DataBind()

这样的

dgvRecorOverview.DataBind();

您必须设置DataGridView.AutoGenereateColumns = true;以基于您设置为DataSourceDataTable自动创建列。检查您填充的DataTable (dt)是否具有预期的行和列。如果DataTable是空的,那么显然你在网格中看不到任何数据。