即使SQL请求正确,DataGridView仍为空

时间:2019-06-14 13:41:24

标签: vb.net datagridview

因此,我只需要用在MySQL Workbench中尝试并能正常工作的SQL请求的结果填充WinForm的DataGridView。

这不是我第一次在此特定程序中执行此操作,其他所有程序都运行良好。但是,无论我做什么,DataGridView都保持空白。

这是我的代码:

Dim BindingName As New BindingSource, ProdSet As New DataTable

    Private Sub SelectAllFacture()

        ClassConfig.Connexion.Open()

        ProdSet.Clear()

        Dim Requete As String
        Requete = "SELECT * FROM Product"

        Try
            Dim Cmd As New MySqlCommand
            With Cmd
                .Connection = ClassConfig.Connexion
                .CommandText = Requete
            End With

            Dim Adpt As New MySqlDataAdapter(Cmd)
            Adpt.Fill(ProdSet)
        Catch ex As Exception
            Autorisations.ErrorCheck(ex)
        End Try

        ClassConfig.Connexion.Close()

        BindingName.DataSource = ProdSet
        DataGridView.DataSource = BindingName

    End Sub

要明确显示未显示的内容:

  • DataGridView很好... DataGridView

  • Autorisations.ErrorCheck(ex)从另一个类调用Sub,该类在出现错误时打开MsgBox(不是)。

  • ClassConfig.Connexion只是连接,存储在另一个Class

1 个答案:

答案 0 :(得分:2)

而不是填充数据集(产品集),而是使其成为数据表

Dim prdtable as new DataTable

然后

Adpt.Fill(prdtable)
BindingName.DataSource = prdtable

还要确保您已经将正确的列添加到DataGridView或进行了设置:

dataGridView.AutoGenerateColumns = true