【问题标题】:How to Bind DataGridView with SqlDataReader如何将 DataGridView 与 SqlDataReader 绑定
【发布时间】:2017-03-20 18:27:19
【问题描述】:

任何人都可以在此代码中帮助我吗?我正在尝试将数据与 datagridview 绑定。查询在 sql server 中返回值。但它没有绑定 DataGridView 中的任何值....

     private void CheckMembers()
     {
        try
        {
            string query = "Select id, id-no, status From Members Where Head=@Head";

            sqlCommand = new SqlCommand(query, sqlConnection);
            sqlConnection.Open();
            sqlCommand.Parameters.AddWithValue("@Head", "2288885858");
            sqlDataReader = sqlCommand.ExecuteReader();

            if (sqlDataReader.HasRows)
            {
                fmGview.Visible = true;
                DataTable dt = new DataTable();
                dt.Load(sqlDataReader);
                MessageBox.Show(dt.ToString());
                fmGview.DataSource = dt;
            }
        }
        catch (Exception exp)
        {
            MessageBox.Show(exp.ToString(), "Exception in CheckMembers");
        }
        finally
        {
            CheckConnectionStatus();
        }
   }

【问题讨论】:

  • 我认为这应该可行。你确定你的sql找到了一些数据吗?
  • 我测试了你的代码。它工作正常。也许你在网格上的字段名有错字什么的。
  • 如果您仔细检查并且dt不为空,请同时发布您的UI代码。 DataGridView 不属于 wpf
  • @MistrMowgli,我不知道。你没有显示任何 UI 代码
  • @EdPlunkett, 3 in the counter of rows in dt

标签: c# winforms datagridview sql-server-2008-express


【解决方案1】:

在列设计器中为每一列设置DataPropertyName。为此,您可以将鼠标指针放在DataPropertyName 行中的右侧单元格上,其中显示(none),然后单击鼠标左键。选择显示“(none)”的文本,然后键入要在该 DataGridView 列中显示的数据库字段名称。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2011-04-02
  • 1970-01-01
  • 1970-01-01
  • 2013-04-29
  • 1970-01-01
  • 1970-01-01
  • 2010-12-28
  • 2012-01-20
相关资源
最近更新 更多