Datagridview vb不起作用

时间:2015-01-12 15:52:15

标签: database vb.net datagridview

我正在进行计算的A Level(我在编程方面非常糟糕,这就是为什么我在这里)并且我按照教程获取datagridview来加载我已链接到项目的数据库中的表而没有任何内容在调试中出现,仍然是灰色表。

这是我的代码:

Imports System.Data.OleDb

Public Class Cards
 Dim con As New OleDbConnection

 Private Sub DataGridView1_CellContentClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView1.CellContentClick
    con.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source= |DataDirectory|\Cards.accdb"
    con.Open()
    datagridShow()
 End Sub
 Private Sub datagridShow()
    Dim ds As New DataSet
    Dim dt As New DataTable
    ds.Tables.Add(dt)
    Dim da As New OleDbDataAdapter
    da = New OleDbDataAdapter("SELECT * FROM cards", con)
    da.Fill(dt)
    DataGridView1.DataSource = dt.DefaultView
    con.Close()
 End Sub
End Class

1 个答案:

答案 0 :(得分:-2)

'如果网格中没有数据没有单元格可以点击,那么你的代码不会触发DataGridView1.CellContentClick所以你永远不会点击你的DataGridView1_CellContentClick方法

'我刚刚运行了你的代码并且运行正常。我确实把我的连接字符串放入了,所以请检查你的连接'字符串。

'我不确定您为什么要在单元格联系人点击上加载网格。

'尝试此操作并在页面加载或按钮单击事件上调用loadData,这应该适合您。

Private Sub loadData()
    con.ConnectionString = "Your Connection String"
    con.Open()

    datagridShow()
End Sub

Private Sub datagridShow()
    Dim ds As New DataSet
    Dim dt As New DataTable
    ds.Tables.Add(dt)
    Dim da As New OleDbDataAdapter

    da = New OleDbDataAdapter("SELECT * FROM cards", con)
    da.Fill(dt)

    DataGridView1.DataSource = dt.DefaultView

    con.Close()

End Sub