加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

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

发布时间:2020-12-17 07:24:13 所属栏目:百科 来源:网络整理
导读:嗨, 我有一个带有10个文本字段和1个组合框的窗体. 当用户选择组合框中的记录时,我想在我的表格数据表变量(称为dtBranches)中找到该记录,然后从数据行填充我的10个文本字段. 我试过这个: Dim dr As System.Data.DataRowIf mSortCode 0 Then dr = dtBranches.
嗨,

我有一个带有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 ...

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读