У меня есть функция автозаполнения в поле со списком, она работает правильно, но есть небольшая проблема, я сделал список предложений для длины текста более 3 символов, но список появляется после длины 4 символа (когда пользователь вводит пятый символ текста), что означает, что когда код, выполненный в первый раз, список не отображается здесь, это код в Text_Changed
событии
Private Sub TxtItem_TextChanged(sender As System.Object, e As System.EventArgs) Handles TxtItem.TextChanged
If Trim(TxtItem.Text) <> "" And Trim(TxtItem.Text).Length > 3 Then
'Autocomplete
Dim Bl As New ItemBL
Dim suggestions = Bl.DisplayLikeNameList(Trim(TxtItem.Text))
Dim MySource As New AutoCompleteStringCollection()
MySource.AddRange(suggestions.ToArray)
With TxtItem
.AutoCompleteMode = AutoCompleteMode.Suggest
.AutoCompleteSource = AutoCompleteSource.CustomSource
.AutoCompleteCustomSource = MySource
End With
TxtItem.Select(TxtItem.Text.Length, 0)
Exit Sub
Else
TxtItem.AutoCompleteMode = AutoCompleteMode.None
End If
End Sub
Примечание. Эта проблема вызывает выход приложения (иногда) в Windows XP, но не влияет на Windows 7.