首页 > 解决方案 > 如何在 VB.Net 中使用 UserControl 和 FlowLayoutPanel 从 MySQL 制作自定义表?

问题描述

对不起,这里的新手。我想创建一个自定义表,该表使用 UserControl 和 VB.Net 中的 For Each 循环从 MySQL 数据库生成可滚动 FlowLayoutPanel 上的记录。我自己尝试过,但它只显示了三条记录中我保存在数据库中的最后一条记录。我知道我的 For Each 循环有问题,因为这是我第一次使用它。

 Private Sub NewDisplay()

    connect()

    Dim cmd As New MySqlCommand
    Dim conn As New MySqlConnection("host=localhost;username=root;password=;database=Database")
    Dim Reader As MySqlDataReader

    MD = "SELECT * From users"
    cmd = New MySqlCommand(MD, con)
    connect()
    Reader = cmd.ExecuteReader
    While Reader.Read
         NewUserName = (Reader.Item("UserName").ToString)
         NewUserID = (Reader.Item("UserID").ToString)
    End While


    Query = NewUserName & " " & NewUserID
    Dim ListControl As EmployeeListControl = New EmployeeListControl
    For Each Items In Query
        ListControl.EmployeeName.Text = NewUserName
        ListControl.EmployeeID.Text = NewUserID
        FlowLayoutPanel1.Controls.Add(ListControl)
    Next

End Sub

标签: mysqlvb.netdatatableuser-controlsflowlayoutpanel

解决方案


归功于 Jimi

While Reader.Read 
Dim listControl = New EmployeeListControl() 
listControl.EmployeeName.Text = Reader.Item("UserName").ToString() 
listControl.EmployeeID.Text = Reader.Item("UserID").ToString() 
FlowLayoutPanel1.Controls.Add(listControl) 
End While 

推荐阅读