2013-11-22 93 views
0

我查询了我的MySql数据库和数据存储在一个名为搜索事件的数据集(我已经检查过它,它的工作原理) 但是,当我尝试将这些数据传递到datagridview,然后最终我的数组它似乎并没有工作:(这个问题似乎是没有数据从搜索活动传递到表 任何想法?如何填充datagridview VB.Net

Dim Table As New DataGridView 
    Table.DataSource = SearchEvents.Tables("Event ID") 
    Dim EventID(Table.Rows.Count - 1) As String 
    For i = 0 To 12 
     EventID(i) = Table.Rows(0).Cells(i).Value 
    Next 
+0

如果SearchEvents.Tables(“Event ID”)的内容正确(= it it这是一个有效的表,其中包含您期望的列/行),一切都应该没问题。设置一个中断点,找出可能存在的问题(99%的SearchEvents.Tables(“事件ID”)机会不包含您的想法)。 – varocarbas

+0

你有检查行/列这个代码只检查列 – SK2185

+0

如果我创建一个实际的数据网格并将其放置在窗体上的代码运行良好,它只是当我使用一个变量,它打破 – user3001471

回答

0

“试试下面的函数

Public Sub getuserlist() 
    Dim con As New MySqlConnection(ConnectionString) 

    Try 
     If con.State <> ConnectionState.Open Then 
      con.Open() 
     End If 

     Dim selecttaxinv = "SELECT * FROM user_tb WHERE user_status = 'Active' ORDER BY date_registered DESC" 
     Dim myCommand As New MySqlCommand(selecttaxinv, con) 
     Dim dr As MySqlDataReader 
     dr = myCommand.ExecuteReader() 
     yourdatagridview.Rows.Clear() 
     Dim b = 1 
     While dr.Read() 
      Dim fullname As String = dr("fname") & " " & dr("mname") & " " & dr("lname") 

      Dim row As String() = New String() {dr("user_id"), b, fullname, dr("fname"), dr("date_registered")} 
      yourdatagridview.Rows.Add(row) 'print list 
      b += 1 
     End While 
     dr.Close() 


     If con.State = ConnectionState.Open Then 
      con.Close() 
     End If 
    Catch ex As Exception 
     MessageBox.Show(ex.Message, "Information", MessageBoxButtons.OK, MessageBoxIcon.Information) 

    End Try 

End Sub