cs_vapo
Messages postés9Date d'inscriptionvendredi 19 septembre 2003StatutMembreDernière intervention 2 décembre 2005
-
18 nov. 2005 à 21:51
cs_vpoyo
Messages postés363Date d'inscriptionvendredi 14 février 2003StatutMembreDernière intervention20 avril 2010
-
19 nov. 2005 à 12:45
Bonsoir,
Je voudrais savoir si quelqu'un a déjà développé un bout de code pour faire à partir d'une saisie, une requête
dans une base de donnèes et retourner les 10 premiers élèments
correpondant au début de ma saisie et réduire la recherche à chaque
lettre taper.
Et tout ça en VB.Net (Windows Form). Je précise que je n'ai pas de
soucis avec la base de donnèes et le retour de résultat et juste pour
ce qui est du remplissage du combobox en dynamique.
cs_vpoyo
Messages postés363Date d'inscriptionvendredi 14 février 2003StatutMembreDernière intervention20 avril 20106 19 nov. 2005 à 12:45
un truc que j'ai bien aimé sous vbstudio 2005 (beta 2) c'est que tu as
un mécanisme d'auto complétion, en gros ce que tu demandes.
je pense qu'un moyen simple est qu'a chaque fois que l'utilisateur tape
une lettre dans la combo, avec les évènements, tu envoies la requêtes
voulus pour limiter le nombre de résultat du peux faire un LIMIT dans
ta requête.
attention sur le LIMIT chaque moteur l'implémente un peu comme il veut donc regarde dans la doc de ton moteur sql
ensuite tu récupère tes données et dans ta combo il suffit de faire un
maCombo.Items.Clear ' ca efface ce qu'elle contient
maCombo.Items.AddRange(monTableauDeDonnée) 'Dans le cas ou tu as un tableau de string
maCombo.Datasource = mon_dataset.tables(0) 'dans le cas ou tu récupère un dataset
pour
une plus grande efficacité, je pense que ca sera pas mal de faire une
procédure stockée en lui passant en paramètre le début du texte cherché
ainsi que le nombre de ligne que tu veux remonté ;-)