当前位置 : 主页 > 编程语言 > c语言 >

vb.net – 如何搜索DataTable以获取特定记录?

来源:互联网 收集:自由互联 发布时间:2021-06-24
嗨, 我有一个带有10个文本字段和1个组合框的窗体. 当用户选择组合框中的记录时,我想在我的表格数据表变量(称为dtBranches)中找到该记录,然后从数据行填充我的10个文本字段. 我试过这个
嗨,

我有一个带有10个文本字段和1个组合框的窗体.

当用户选择组合框中的记录时,我想在我的表格数据表变量(称为dtBranches)中找到该记录,然后从数据行填充我的10个文本字段.

我试过这个:

Dim dr As System.Data.DataRow
If mSortCode > 0 Then
    dr = dtBranches.Select("SortCode='" & mSortCode & "'")
    Me.txtBranch.Text = dr("Branch").ToString()
    Me.txtBankName.Text = dr("BankName").ToString()
    Me.txtBranchTitle.Text = dr("BranchTitle").ToString()
    Me.txtReference.Text = dr("Ref").ToString
    Me.txtAddr1.Text = dr("Address1").ToString
    Me.txtAddr2.Text = dr("Address2").ToString
    Me.txtAddr3.Text = dr("Address3").ToString
    Me.txtPostCode.Text = dr("PostCode").ToString
    Me.txtTelNo.Text = dr("TelephoneNumber").ToString
    Me.txtTown.Text = dr("Town").ToString
    Me.txtTelNo.Text = dr("TelephoneNumber").ToString
end if

但无法让它编译……

请问这是正确的,最好的方法是什么?

谢谢

菲利普

DataTable.Select返回DataRows数组.您需要声明一个数组来接收结果

Dim dr() As System.Data.DataRow

当然,您需要检查是否返回了行并解决了数组中的第一行

dr = dtBranches.Select("SortCode='" & mSortCode & "'")
If dr.Length > 0 Then
    Me.txtBranch.Text = dr(0)("Branch").ToString()
    Me.txtBankName.Text = dr(0)("BankName").ToString()
    ...... and so on ...
网友评论