【问题标题】:VB.net Loading data to datagridview from MysqlVB.net 从 Mysql 将数据加载到 datagridview
【发布时间】:2015-04-16 11:58:56
【问题描述】:

我有一个 datagridview 并且我已经在其中放置了 3 列(通过设计),但是当我运行此代码时,它会添加另外 3 列并将数据加载到那些新创建的列中。它怎么能从我创建的列中加载数据?

编辑:第一和第二列是文本框,第三列是组合框。

代码在表单加载中:

    Dim sqlDataAdapter As New MySqlDataAdapter
    Dim dt As New DataTable
    Dim bSource As New BindingSource

    Try
        sqlconn.Open()
        Dim query As String
        query = "SELECT * FROM tbl_subject ORDER BY yearlevel, code"
        sqlcommand = New MySqlCommand(query, sqlconn)
        sqlDataAdapter.SelectCommand = sqlcommand
        sqlDataAdapter.Fill(dt)
        bSource.DataSource = dt
        datagrid_Subject.DataSource = bSource
        sqlDataAdapter.Update(dt)

        sqlconn.Close()
    Catch ex As Exception
        MessageBox.Show(ex.Message)
    Finally
        sqlconn.Dispose()
    End Try

【问题讨论】:

  • 不允许在 DataGrid 中使用 AutoGenerateColumns

标签: mysql vb.net winforms datagridview


【解决方案1】:

DataGridView 的列具有属性DataPropertyName,将其值设置为 sql 查询中的列名。
这将在预定义的列中显示数据

正如@Icepickle 在 cmets 集合中所说的那样datagrid_Subject.AutoGenerateColumns = False
这将阻止 datagridview 为您的 sql 查询的 SELECT 语句中使用的所有字段生成列

【讨论】:

    【解决方案2】:

    只需转到工具箱并拖放datagridview, 在属性上将其命名为 dgvSubject 使用您上面的代码的示例将如下所示;

    将 sqlDataAdapter 调暗为新的 MySqlDataAdapter 将 dt 调暗为新数据表 将 bSource 调暗为新的 BindingSource

    Try
        sqlconn.Open()
        Dim query As String
        query = "SELECT * FROM tbl_subject ORDER BY yearlevel, code"
        sqlcommand = New MySqlCommand(query, sqlconn)
        sqlDataAdapter.SelectCommand = sqlcommand
        sqlDataAdapter.Fill(dt)
        bSource.DataSource = dt
        dgvSubject.DataSource = bSource
        sqlDataAdapter.Update(dt)
    
        sqlconn.Close()
    Catch ex As Exception
        MessageBox.Show(ex.Message)
    Finally
        sqlconn.Dispose()
    End Try
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-02-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多