0
我一直在閱讀的每一個評論說,這段代碼工作.. 但是,當我嘗試鍵入文本到文本框沒有自動完成出現,它只是閃爍..請幫助, ,即時通訊新的WinForms文本框不顯示自動完成,文本框只是閃爍
Private Sub txsCusID_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txsCusID.TextChanged
Dim cmd As New SqlClient.SqlCommand("SELECT DISTINCT fname + ' ' + lname AS clist FROM tblclient WHERE id LIKE '%" + txsCusID.Text.ToString + "%'", sqlconstr)
Dim ds As New DataSet
Dim da As New SqlClient.SqlDataAdapter(cmd)
da.Fill(ds, "list")
Dim col As New AutoCompleteStringCollection
Dim i As Integer
For i = 0 To ds.Tables(0).Rows.Count - 1
col.Add(ds.Tables(0).Rows(i)("clist").ToString())
Next
txsCusID.AutoCompleteSource = AutoCompleteSource.CustomSource
txsCusID.AutoCompleteCustomSource = col
txsCusID.AutoCompleteMode = AutoCompleteMode.Suggest
End Sub
什麼是sqlconstr?如果它是一個實際的字符串,我不認爲它會工作,因爲SqlCommand需要一個實際的SqlConnection對象。如果你嘗試一下代碼,會發生什麼? – pinkfloydx33 2013-03-06 00:26:55
@ pinkfloydx33 sqlconstr是一個sqlclient.sqlconnection。我試圖把col.add後的MsgBox(ds.Tables(0).Rows(i)(「clist」)。ToString())並顯示'name',所以我知道查詢沒有返回null 。 – 2013-03-06 00:47:18
嘗試刪除.ToString()使其成爲'col.Add(ds.Tables(0).Rows(i)(「clist」))'ToString將爲您提供Object.ToString,它通常只是「名稱」正如你所說的 – pinkfloydx33 2013-03-06 01:24:00