【问题标题】:C# win forms datagrid view displaying MySql tableC# winforms datagridview 显示 MySql 表
【发布时间】:2017-05-31 07:40:18
【问题描述】:

您好,我正在尝试通过单击按钮将 MySql 表数据加载到我的 win 表单应用程序中的 datagridview 中,但似乎无法使其正常工作。我想我错过了绑定源,但我很困惑。

我们将不胜感激。

private void button3_Click(object sender, EventArgs e)
     {
         string connStr = "Data Source=localhost;port=3306;Initial Catalog=bitdb;User Id=root;Password='';"; 
         string query = "Select * from Client"; 
         using (MySqlConnection conn = new MySqlConnection(connStr))
         {
             using (MySqlDataAdapter adapter = new MySqlDataAdapter(query, conn))
             {
                 DataSet ds = new DataSet();
                 adapter.Fill(ds);
                 dataGridView1.DataSource = ds.Tables[0];
             }
         }
     }

【问题讨论】:

  • 调试器说什么?成功获得表?包括一些列?另外,你不需要在 datagridview 上定义一些列吗?

标签: c# mysql winforms datagridview


【解决方案1】:

根据文档,您应该使用 BindingSourceDataGridView 组件。更多信息here

private void button3_Click(object sender, EventArgs e)
     {
         string connStr = "Data Source=localhost;port=3306;Initial Catalog=bitdb;User Id=root;Password='';"; 
         string query = "Select * from Client"; 
         using (MySqlConnection conn = new MySqlConnection(connStr))
         {
             using (MySqlDataAdapter adapter = new MySqlDataAdapter(query, conn))
             {
                 DataSet ds = new DataSet();
                 adapter.Fill(ds);
                 var bindingSource = new BindingSource();
                 bindingSource.DataSource = ds.Tables[0];
                 dataGridView1.DataSource = bindingSource;
             }
         }
     }

此外,任何错误信息都会有所帮助。

【讨论】:

  • 谢谢你我错过了绑定源 iv 得到的数据现在显示。再次欢呼
猜你喜欢
  • 2023-03-20
  • 1970-01-01
  • 2022-09-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多