【发布时间】:2014-03-28 10:27:08
【问题描述】:
我是 Visual Basic 2010 的新手,我一直在用这个把头撞到墙上。
我有一个接受用户输入并将其保存到以下格式的文本文件的表单:
“客户编号:”00
多伊,约翰
10350 某条街
城市,州邮政编码
电话号码
“账户余额:$”00.00
“最后付款日期:”月/日/年
我有一个文本框,用户可以在其中输入客户编号或姓氏,具体取决于选中的复选框。这样做的目的是通过姓氏或客户编号在文本文件中搜索客户记录。
当搜索时,我想要具有姓氏或客户编号的客户 用于在列表框中显示的搜索。
这是我下面的代码:
Private Sub btnSearch_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSearch.Click
'Local Variables
Dim ReadCustomerRecords As StreamReader
Dim strCustomerNumber As String
' Validate Search Criteria
If chkCustomerNumber.Checked = False And chkLastName.Checked = False Then
MessageBox.Show("Please select either Customer Number OR Last Name" & vbNewLine & "to narrow your search.", "Attention")
End If
If chkCustomerNumber.Checked And chkLastName.Checked Then
MessageBox.Show("You may only search by Customer Number OR Last Name." & vbNewLine & "Please revise your search.", "Attention")
End If
If chkCustomerNumber.Checked Then
ReadCustomerRecords = File.OpenText(strCustomerRecordsFile)
strCustomerNumber = ReadCustomerRecords.ReadLine()
Do Until strCustomerRecordsFile.Contains(txtSearchFile.Text)
If strCustomerNumber.Contains(txtSearchFile.Text) Then
lstCustomerSearch.Items.Add(strCustomerNumber)
lstCustomerSearch.Items.Add(ReadCustomerRecords.ReadLine())
lstCustomerSearch.Items.Add(ReadCustomerRecords.ReadLine())
lstCustomerSearch.Items.Add(ReadCustomerRecords.ReadLine())
lstCustomerSearch.Items.Add(ReadCustomerRecords.ReadLine())
lstCustomerSearch.Items.Add(ReadCustomerRecords.ReadLine())
lstCustomerSearch.Items.Add(ReadCustomerRecords.ReadLine())
Else
MessageBox.Show("The customer number you entered is not valid." & vbNewLine & "Please try again or search by Last Name.", "Attention")
End If
Return
Loop
ReadCustomerRecords.Close()
End If
If chkLastName.Checked Then
ReadCustomerRecords = File.OpenText(strCustomerRecordsFile)
End If
End Sub
【问题讨论】:
-
我本来想补充一点,当我运行应用程序时,选中客户编号复选框,然后搜索“01”,它会显示客户 01 的记录
-
但是当我尝试 02 等等时它就会锁定。我知道我错了,所以有人可以指出我正确的方向。
标签: vb.net