TreeView dynamique en multilangue
Guillaume

 

   Le composant treeview inclus dans WebDev 7 est très intéressant et simple à utiliser mais peut poser problème lorsqu'il est défini de manière dynamique dans le cadre d'un projet multilangue... En effet, pour que celui-ci fonctionne dans plusieurs langue il fallait nécéssairement le remplir avec des chaines traduites ce que je ne faisais évidemment pas en le remplissant à partir d'une requête.
J'ai fini par trouver une solution qui, si elle n'est pas forcément très élégante, a le mérite de bien fonctionner et je souhaitais simplement vous en faire part:

   Tout le code de création puis de génération du treeview n'a pas besoin d'être retouché. le problème vient en fait de la fonction "ArbreAffiche" Quand celle ci génère le code html elle le génère à partir de la langue courante. Ce qui veut dire que si je lance la fonction alors que la langue courante est l'anglais celle ci tente de générer le code html du treeview en se basant sur les chaines traduites en anglais qui sont vides dans mon cas... D'où un treeview vide.

La solution que j'ai utilisée est la suivante:

Il suffit d'utiliser l'ArbreAffiche comme suit en récupérant le code HTML généré puis en l'assignant au cahmp HTML recevant le TreeView

codeHTML est une chaîne //Va servir à récupérer le code html généré

SI Nation()=3 ALORS  //Si la langue courante est l'anglais
    Nation(5)  //Je passe en français
    codeHTML=ArbreAffiche("ArbreRef")  //Je génère le code html en français
    Nation(3)  //Je repasse dans la langue où j'étais
    CHPHTML=codeHTML  /et je n'ai plus qu'à complêter le champ HTML
FIN


Voilà ma solution qui marche nickel. Si vous en avez d'autre ou si quelqu'un a aussi rencontré des problèmes de ce genre sur les treeviews, n'hésitez pas à me faire vos retours...

Guillaume