【发布时间】:2014-05-26 21:49:25
【问题描述】:
我正在 VB.Net 中制作一个连接数据库并允许用户添加、编辑和删除记录等的程序。但是我希望能够使用一个模块来创建子例程和函数并在其中引用它们我的表格。我找到了一种方法来获取数据集中表的字段名称,以便我可以使用循环来获取字段并将数据写入其中。然而,我的问题是用于写入这些字段的控件必须明确命名(例如 txtFirst_Name 或 cboSubjects)。这让我很难完成我的任务,因为我无法使用循环添加到字段中,而且我必须为表单上的每个输入字段写一行,而不是循环 10 次。以下是我的代码副本,包括使用 subs。
添加到数据库
Private Sub btnSave_Click(sender As Object, e As EventArgs) Handles btnSave.Click
query = "Select * from Supplier"
getTable()
Try
Dim cb As New OleDbCommandBuilder(da)
Dim dSet_NewRow As DataRow
dSet_NewRow = dSet.Tables("Table").NewRow
dSet_NewRow.Item("Name") = TextBox1.Text
dSet_NewRow.Item("Address1") = TextBox2.Text
dSet_NewRow.Item("Address2") = TextBox3.Text
dSet_NewRow.Item("Town") = TextBox4.Text
dSet_NewRow.Item("County") = TextBox5.Text
dSet_NewRow.Item("Country") = TextBox6.Text
dSet_NewRow.Item("PostCode") = TextBox7.Text
dSet.Tables("Table").Rows.Add(dSet_NewRow)
da.Update(dSet, "Table")
dSet.Tables.Clear()
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub
连接数据库
Sub Connect()
Try
conn.ConnectionString = connString
conn.Open()
'If conn.State = ConnectionState.Open Then
'MsgBox("open")
'End If
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub
将信息放入数据集中
Sub getTable()
Try
da = New OleDbDataAdapter(query, conn)
da.Fill(dSet, "Table")
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub
有谁知道如何使用循环使用控件动态分配输入,而不必命名textbox1,textbox2......
【问题讨论】: