2016-05-13 77 views
0

一个ComboBox我有以下的列的数据库:填充使用过滤器

RegNumber | LastName | FirstName | OOPVB | DataComms | ModelsDB | MAB | OB | CF 

我想填充柱OOPVB,DataComms,ModelsDB,MAB,OBCF一个ComboBox。

我只设法使用此代码单列做到这一点:

Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click 
    mysqlConn = New MySqlConnection 
    mysqlConn.ConnectionString = 
    "server=127.0.0.1;userid=root;database=studentsresults1" 
    Dim SDA As New MySqlDataAdapter 
    Dim dbDataSet As New DataTable 
    Dim bSource As New BindingSource 

    Try 
     mysqlConn.Open() 
     Dim Query As String 
     Query = "select * from studentsresults1.courses" 
     SQLcmd = New MySqlCommand(Query, mysqlConn) 
     SDA.SelectCommand = SQLcmd 
     SDA.Fill(dbDataSet) 
     bSource.DataSource = dbDataSet 
     DataGridView1.DataSource = bSource 
     SDA.Update(dbDataSet) 


     mysqlConn.Close() 

    Catch ex As MySqlException 
     MessageBox.Show(ex.Message) 

    Finally 
     mysqlConn.Dispose() 

    End Try 


End Sub 

如何为多个列这样做呢?请协助

回答

0

如果我理解正确,您希望填写组合中所有来自您对表格标记的列中的所有数据,对不对?

一种方法(真正丑陋但功能)是对其余列重复执行另一列的SQL,并以这种方式添加结果。

一个清洁的方法是循环中的所有单元格:

Private Sub GetCourses() 
    SQL.ExecQuery("SELECT OOPVB,DataComms,ModelsDB,MAB,OB, CF FROM marks") 
    If SQL.RecordCount > 0 Then 
     For Each r As DataRow In SQL.SQLDS.Tables(0).Rows 
      For Each c in r.ItemArray 
       ComboBox1.Items.Add(c.Value) 
      Next 
     Next 
     ComboBox1.SelectedIndex = 0 
    ElseIf SQL.Exception <> "" Then 
     MsgBox(SQL.Exception) 
    End If 
End Sub 
+0

我已经试过这一点,它不工作“的类型公共成员'价值‘整数’未找到。” – snash

+0

我的不好,删除“ComboBox1.Items.Add(c.Value)”上的“.value” – Aimnox

相关问题