[英]Populate datagridview with click event
我正在嘗試在click事件(如搜索按鈕)上加載datagridview。 在此過程中我沒有收到任何錯誤,但是我的datagridview沒有填充。 我知道打開數據庫連接的方法是可行的,並且我的SQL語句在Access中對其進行測試時也可以正常工作,並且我相信如果它仍然是SQL語句,它將轟炸。 我認為這是在事件聲明中,但是我對vb還是很陌生。 我的代碼如下:
Private Sub btnQuickSearch_Click(sender As Object, e As EventArgs) Handles btnQuickSearch.Click
dgvQuickSearchEmployee.Visible = True
qSearchEmployee()
End Sub
Private Sub qSearchEmployee()
conOpen()
Dim qSearchString As String
qSearchString = tbQuickSearch.Text
qSearchString = qSearchString.ToUpper()
sqlStr = "SELECT employeeID, firstName, lastName, department FROM [employee] WHERE (employeeID LIKE '*" & qSearchString & "*' OR firstName LIKE '*" & qSearchString & "*' OR lastName LIKE '*" & qSearchString & "*' OR department LIKE '*" & qSearchString & "*') AND active = TRUE"
Dim ds As DataSet = New DataSet
Dim dt As DataTable = New DataTable
ds.Tables.Add(dt)
Dim daEmployee As OleDb.OleDbDataAdapter = New OleDb.OleDbDataAdapter(sqlStr, con)
daEmployee.Fill(dt)
dgvQuickSearchEmployee.DataSource = dt.DefaultView
dgvQuickSearchEmployee.Refresh()
End Sub
任何幫助將不勝感激。
**更新! 這是我的代碼現在的外觀(沒有太大不同)。 現在它正在填充datagridview,但無論我對搜索做什么,它根本不會返回任何結果。
Private Sub btnQuickSearch_Click(sender As Object, e As EventArgs) Handles btnQuickSearch.Click
dgvQuickSearchEmployee.Visible = True
qSearchEmployee()
End Sub
Private Sub qSearchEmployee()
conOpen()
Dim qSearchString As String
qSearchString = tbQuickSearch.Text
qSearchString = qSearchString.ToUpper()
sqlStr = "SELECT employeeID, firstName, lastName, department FROM [employee] WHERE (employeeID LIKE '*" & qSearchString & "*' OR firstName LIKE '*" & qSearchString & "*' OR lastName LIKE '*" & qSearchString & "*' OR department LIKE '*" & qSearchString & "*') AND active = TRUE"
Dim ds As DataSet = New DataSet
Dim dt As DataTable = New DataTable
ds.Tables.Add(dt)
Dim da As OleDb.OleDbDataAdapter = New OleDb.OleDbDataAdapter(sqlStr, con)
da.Fill(dt)
dgvQuickSearchEmployee.DataSource = dt.DefaultView
dgvQuickSearchEmployee.Refresh()
End Sub
試試這個代碼
'Dim ds As DataSet = New DataSet 'Not required or Not inused
Dim dt As DataTable = New DataTable
'ds.Tables.Add(dt) 'Not required or Not inused
Dim daEmployee As OleDb.OleDbDataAdapter = New OleDb.OleDbDataAdapter(sqlStr, con)
daEmployee.Fill(dt)
dgvQuickSearchEmployee.DataSource = dt
dgvQuickSearchEmployee.Refresh()
代替dgvQuickSearchEmployee.Refresh()
嘗試dgvQuickSearchEmployee.Databind()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.