【发布时间】:2015-10-29 05:44:20
【问题描述】:
我正在尝试将连接的字符串显示到自动完成文本框中 当用户开始输入时,它将按姓氏搜索。查询将在数据库中查找全名包含...并在自动建议中显示全名,公司
.
如果我只是按姓氏搜索
并输入姓氏
MyCollection.Add(reader("last_name").ToString())
显示结果 但是下面的代码什么也没有显示
这是我的代码
谁能建议我如何解决这个问题?
Dim strauto As String
Dim name As String
name = Trim(txtCompanyKeyContacts.Text)
If name = "" Then Exit Sub
Dim cnString As String = ConfigurationManager.ConnectionStrings("dbcon").ConnectionString
Dim con As New SqlConnection(cnString)
Using con
strauto = "SELECT (FULL_NAME + ',' + Company + ',' + Status) as contact FROM name where FULL_NAME like '%" & Replace(name, "'", "''") & "%' "
'SELECT last_name,FULL_NAME + ',' + Company + ',' + Status as contact FROM name"
con.Open()
Dim cmd As New SqlCommand(strauto, con)
Dim reader As SqlDataReader = cmd.ExecuteReader()
Dim MyCollection As New AutoCompleteStringCollection()
If reader.HasRows = True Then
While reader.Read()
' MyCollection.Add(reader("FULL_NAME + ',' + Company + ',' + Status").ToString())
MyCollection.Add(reader("contact").ToString())
End While
End If
txtCompanyKeyContacts.AutoCompleteCustomSource = MyCollection
con.Close()
End Using
【问题讨论】:
-
标准的自动完成功能要求控件本身的文本实际上与自动完成列表中项目的开头相匹配。如果你想要别的东西,那么你必须自己实现它。
-
MyCollection.Add(reader("contact").ToString())中的contact是什么意思 -
Ops that quot 随机出现.. 实际代码是 MyCollection.Add(reader("contact").ToString())
-
jmcilhinney- 问题是它显示一些记录不是全部......但是当我在 sql svr 中运行相同的查询时,它显示了预期的结果
标签: vb.net winforms autocompletebox