Bonjour,
J'écris une petite application qui permet de se connecter à une base de donnée pour y exécuter des requêtes.
J'aimerais que les requête que l'utilisateurs ouvrent (elle se trouve déjà dans le PC) subissent une coloration syntaxique des mots clés (SELECT, FROM, WHERE, ...). Pour ce faire j'utilise la boucle suivante :
Cela fonctionne partiellement car si, j'invente, je veut colorer le mot FROM et qu'une de mes tables s'appelle FROMAGE j'aurais ceci FROMAGE.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 string[] motcle = {"SELECT", "FROM", "WHERE", ...}; int start = 0; //A partir de l'index ou l'on commence la recherche foreach(string cle in motcle) { while(marichtextbox.Text.IndexOf(cle, start) != -1) //Tant que l'on trouve le mot clé { marichtextbox.Select(marichtextbox.Text.IndexOf(cle, start), mot.lenght); //Sélectionne le mot marichtextbox.SelectionColor = Color.Blue; //Change sa couleur start = marichtextbox.Text.IndexOf(cle, start) + mot.lenght; //Index de départ de recherche reçoit l'index du caractére après le mot coloré } start = 0; }
Si quelqu'un avait une solution ou connaitrait une autre méthode ?
Merci
Bonne journée
Partager