Salut,
Je crois avoir compris ce que tu souhaites faire, ce code va ajouter dans l'autocomplete de Text1, le contenu de List1. Ainsi, en tapant quelques lettres, Text1 va te proposer dans une liste qui apparaitra en dessous de celui-ci et qui contiendra le contenu de List1 correspond à ce que tu as tapé dans Text1.
Si c'est bien ce que tu cherches, tu n'auras plus besoin de la procédure Text1_TextChanged, tout sera fait automatiquement.
<hr size= "2" width="100%" />
Private Sub
Form1_Load(
ByVal sender
As System.Object,
ByVal e
As System.EventArgs)
Handles MyBase.Load
MaConnexion.Open()
MaCommande.CommandText = CommandType.Text
MaCommande.CommandText = "SELECT noetudiant, NomEtudiant, PrenomEtudiant FROM etudiant order by nometudiant"
MonCurseur = MaCommande.ExecuteReader
dt.Columns.Add(
"C1")
dt.Columns.Add(
"C2", GetType (
String))
While MonCurseur.Read() =
True
dt.Rows.Add(MonCurseur.GetDecimal(
0), MonCurseur.GetString(
1))
End While
List1.DataSource = dt
List1.ValueMember = "C1"
List1.DisplayMember =
"C2"
MonCurseur.Close()
' Début Modification du code
Dim col
As New System.Windows.Forms.AutoCompleteStringCollection
For Each Str
As String In List1.Items
col.Add(Str)
Next
Text1.AutoCompleteCustomSource = col
Text1.AutoCompleteMode = AutoCompleteMode.Suggest
Text1.AutoCompleteSource = AutoCompleteSource.CustomSource
' Fin de modification du code
End Sub
<hr size ="2" width="100%" />
++
Fauve
<hr size="2" width="100%" />
Pensez :
Réponse Acceptée