我这里有一些示例数据...... Sample Data to query
SQL如下;
"Select Person, Travel, WithWho FROM database
where (Person like '" & txtSearch.Text & "'
or Travel like '" & txtSearch.Text & "'
or WithWho like '" & txtSearch.Text & "')"
我正在列表框中显示旅行方式。 我在文本框中显示 WithWho 字段,这就是问题所在。它使用SARAH填充文本框,这是数据库中的第一条记录并忽略 JOANNE 。这是在WPF应用程序中。我想知道有没有人知道如何提供一个选项来选择要加载的记录,甚至搜索表单上的记录。
感谢您的帮助
答案 0 :(得分:0)
您发布的代码只会在TextBox中显示一个名称,因为它会重置Text
属性的整个值,而不是连接其他名称。您可以使用以下方法解决此问题:
txtPname.Text = ""
While reader.Read()
countvalues += 1
If reader("WithWho") Is DBNull.Value Then
txtPname.Text &= Environment.NewLine & "Unknown"
Else
txtPname.Text &= Environment.NewLine & reader("WithWho")
End If
End While
这些结果仍然不符合我的想法,但如果您在TextBox路线上设置,那么它就是一个开始。但是,从你的评论中,我相信你真正想要的是一个ListBox,如下所示填充:
lstPname.Items.Clear()
While reader.Read()
Dim pName As String
If reader("WithWho") Is DBNull.Value Then
pName = "Unknown"
Else
pName = reader("WithWho")
End If
If Not lstPname.Items.Contains(pName) Then
lstPname.Items.Add(pName)
End If
End While
这将为用户提供一个框,其中每个名称(包括"未知",如果适用)将恰好出现一次。与TextBox不同,他们可以单击名称,其行将立即突出显示。然后,您可以对其他控件进行编码以响应lstPname.SelectedIndexChanged
事件,以确定选择了哪个人并显示相应的信息。