vb.net CheckedListbox 从数据库中获取值
vb.net CheckedListbox get value from database
我正在从 MsAccess 数据库中填充 CheckedListBox table。 table 由两个字段组成,Terms 和 RegX。我想显示条款,但是当我提交时,我想从 RegX 字段中获取值。
Public Function GetMyTable() As DataTable
' Create new DataTable instance.
Dim table As New DataTable
Dim strSql As String = "SELECT * FROM Keywords ORDER BY Terms ASC"
Dim cmd As New OleDbCommand(strSql, con)
Using dr As OleDbDataReader = cmd.ExecuteReader
table.Load(dr)
End Using
Return table
End Function
Private Sub SearchInDoc_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim dt1 As DataTable = GetMyTable()
If dt1.Rows.Count > 0 Then
For i As Integer = 0 To dt1.Rows.Count - 1
CheckedListBox1.Items.Add(CStr(dt1.Rows(i).Item("Terms")), False)
Next
End If
CheckedListBox1.CheckOnClick = True
End Sub
我不知道如何在单击“提交”按钮时return RegX 的值
如果您想将有关“Terms”和“RegX”的信息放在一起,那么您应该使用 CheckedListBox 的 DataSource 属性 将其设置为检索到的数据table,然后指定什么列应显示在列表中。
Private Sub SearchInDoc_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim dt1 As DataTable = GetMyTable()
CheckedListBox1.DataSource = dt1
CheckedListBox1.DisplayMember = "Terms"
CheckedListBox1.CheckOnClick = True
End Sub
现在您可以在提交按钮中添加这样的代码来检索 RegX 字段
Sub Submit_Click(sender As Object, e As EventArgs) Handles Submit.Click
For Each row As DataRowView In CheckedListBox1.CheckedItems
Console.WriteLine(row("RegX"))
Next
End Sub
CheckedListBox 中的每个元素都是一个取自 table 的 DataRowView,您可以提取有关 RegX 字段的信息,只需使用列名称索引该 DataRowView。
在上面的示例中,只有选中的项目受循环枚举的约束。如果要遍历 CheckedListBox 中的所有项目,请使用 CheckedListBox1.Items
我正在从 MsAccess 数据库中填充 CheckedListBox table。 table 由两个字段组成,Terms 和 RegX。我想显示条款,但是当我提交时,我想从 RegX 字段中获取值。
Public Function GetMyTable() As DataTable
' Create new DataTable instance.
Dim table As New DataTable
Dim strSql As String = "SELECT * FROM Keywords ORDER BY Terms ASC"
Dim cmd As New OleDbCommand(strSql, con)
Using dr As OleDbDataReader = cmd.ExecuteReader
table.Load(dr)
End Using
Return table
End Function
Private Sub SearchInDoc_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim dt1 As DataTable = GetMyTable()
If dt1.Rows.Count > 0 Then
For i As Integer = 0 To dt1.Rows.Count - 1
CheckedListBox1.Items.Add(CStr(dt1.Rows(i).Item("Terms")), False)
Next
End If
CheckedListBox1.CheckOnClick = True
End Sub
我不知道如何在单击“提交”按钮时return RegX 的值
如果您想将有关“Terms”和“RegX”的信息放在一起,那么您应该使用 CheckedListBox 的 DataSource 属性 将其设置为检索到的数据table,然后指定什么列应显示在列表中。
Private Sub SearchInDoc_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim dt1 As DataTable = GetMyTable()
CheckedListBox1.DataSource = dt1
CheckedListBox1.DisplayMember = "Terms"
CheckedListBox1.CheckOnClick = True
End Sub
现在您可以在提交按钮中添加这样的代码来检索 RegX 字段
Sub Submit_Click(sender As Object, e As EventArgs) Handles Submit.Click
For Each row As DataRowView In CheckedListBox1.CheckedItems
Console.WriteLine(row("RegX"))
Next
End Sub
CheckedListBox 中的每个元素都是一个取自 table 的 DataRowView,您可以提取有关 RegX 字段的信息,只需使用列名称索引该 DataRowView。
在上面的示例中,只有选中的项目受循环枚举的约束。如果要遍历 CheckedListBox 中的所有项目,请使用 CheckedListBox1.Items