Grâce au contexte, nous récupérons tous les éléments de la liste « Students » et les plaçons dans la variable « this.items ». Nous exécutions ensuite la requête de récupération et redirigeons l’exécution vers la fonction « userLoaded » en cas de succès ou vers la fonction « userFailed
Différencier les boutons
» en cas d’erreur. Implémentez donc la première de ces deux fonctions : voir « Code 1 » ci-dessous.
Encore une fois, l’exécution asynchrone des différentes requêtes peut parfois créer des erreurs, nous entourons donc tout le code de « try … catch » pour éviter les problèmes. Nous créons donc tout d’abord un objet de type « Sys.StringBuilder » correspondant simplement aux « StringBuilders » de C#. Nous créons ensuite le début de l’architecture du menu. Ensuite, nous parcourons les différents éléments de la collection « this.items » et nous ajoutons un bouton par élément. Remarquez d’abord que tous les boutons auront la commande « InsertUser ».
Pour différencier les boutons, nous définissons également l’attribut « MenuItemId » par l’id de l’élément. Souvenez-vous que nous utilisons ce « MenuItemId » dans la fonction « handleCommand » de notre « prototype » pour indiquer à la fonction « InsertUser » quel élément il doit insérer dans la page. Nous clôturons enfin le menu et nous modifions la valeur de la variable « content » par le menu constitué. L’image affichée à droite des différents éléments du menu sont les suivantes et doivent être nommées « Male.png » et « Female.png » : voir figures 9 et 10.
Comme nous le disions tout à l’heure, tant que cette fonction ne sera pas totalement exécutée, la variable « content » contiendra un menu contenant un élément permettant de faire attendre l’utilisateur.
Téléchargez cette ressource
Guide inmac wstore pour l’équipement IT de l’entreprise
Découvrez toutes nos actualités à travers des interviews, avis, conseils d'experts, témoignages clients, ainsi que les dernières tendances et solutions IT autour de nos 4 univers produits : Poste de travail, Affichage et Collaboration, Impression et Infrastructure.