![](/img/trans.png)
[英]VB.NET: How to call another stored procedures based on stored procedure result and display all results?
[英]How to display a select option based on SQL result - VB.net
我這里有一些示例數據... 要查詢的示例數據
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應用程序中。 我想知道是否有人知道如何提供一個選項來選擇要加載的記錄,甚至搜索表單上的記錄。
謝謝你的幫助
您發布的代碼將僅在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
事件,以確定選擇了哪個人並顯示適當的信息。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.