Le 14 septembre 2017, nous avons publié une version actualisée de notre Politique de confidentialité. En utilisant video2brain.com vous vous engagez à respecter ces documents mis à jour. Veuillez donc prendre quelques minutes pour les consulter.

Découvrir Windows Presentation Foundation

Définir un gestionnaire d'évènements dans l'application

TESTEZ LINKEDIN LEARNING GRATUITEMENT ET SANS ENGAGEMENT

Tester maintenant Afficher tous les abonnements
Vous allez définir un gestionnaire d'évènements direct pour répondre à un évènement clic sur un bouton.
05:07

Transcription

Lorsque j'ai créé mon projet, mon objectif était et toujours d'ailleurs d'avoir une interface parfaitement localisée. Je le fais par défaut en français et mon interface est donc en français mais chaque chaîne peut être localisée en anglais par exemple de façon à rendre disponible l’outil pour nos voisins d'outre-manche ou d'outre-atlantique. Donc, c'est une chose, et on a vu comment faire, d'utiliser un fichier de Dictionnaire de ressources XAML pour utiliser, grâce à cette syntaxe Static Resource une ressource qui s'y trouve. Entre parenthèses Static Resource, c'est une ressource statique qui est prise au moment où on compile le XAML au BAML, vous vous souvenez ? On peut aussi faire, ça marche également, un Dynamic Resource. Ca marcherait également. La différence est qu'une ressource dynamique peut être changée en ce qu'on appelle un Runtime au moment de l'exécution. C'est une ressource qu'on peut modifier par programmation finalement. Donc, là je n'avais pas besoin de le faire. Ou si je veux donner la possibilité de changer pendant l'exécution la langue dynamiquement, il faut que je transforme ça en ressource dynamique. C'est une chose de localiser l'interface, mais qu'en est-il du code lui-meme. Quand je suis dans des choses comme ceci où j’envoie des messages, je voudrais pouvoir aussi envoyer aussi des messages en anglais si je suis en anglais, etc. Donc j'ai regardé un peu, je me suis en peu gratté la tête parce que ce n'est pas aussi évident que ça de récupérer un Dictionnaire de ressources XAML dans son code. On peut manipuler le XAML dans son code mais l'option que j'ai choisie a été de gérer un dictionnaire type .net plutôt qu'un dictionnaire de ressource XAML et je l'ai fait comme ceci. Donc c'est une chose que vous trouverez aussi dans les sources de SQLTrismegiste. J'ai mon dictionnaire de ressource. Première chose, SQLTrismegiste dans la version GitHub, elle est en SQLT majuscules et ensuite trismegiste. J'ai commencé ici mon projet en mettant tout un minuscule. Donc, je viens de changer toutes les références : j'ai changé ici dans les propriétés l'Espace de noms par défaut, le Nom de l'assembly, mais c'est surtout l'Espace de noms par défaut, de façon à être cohérent avec mon exemple de code, c'est-à-dire avec mon projet sur GitHub. Je suis allé à tous les endroits, ici dans les déclarations XAML de clr-namespace, dans le code Behind, par exemple, dans App.xaml j'ai changé ici et puis ici. dans le code behind, le namespace, bien entendu. Maintenant je suis cohérent et je compile. C'est une bonne chose. Donc, comment est-ce j'ai récupéré un dictionnaire de valeurs, pour l'utiliser dans mon code ? D'abord il faut que je fasse une chose importante que je m'assure que dans mon dictionnaire je n'ai que des chaînes. Sinon il faut que je parcours toutes les valeurs pour savoir si l'on peut convertir la valeur en chaîne parce que, ce que je vais faire vous allez comprendre, c'est stocker cette chaîne en tant que clé et cette chaîne en tant que valeur dans un dictionnaire d'une collection.net. J’abandonne mon idée de styles, si je veux faire des styles je les ferai directement dans mon App.xaml ou ailleurs, ou je les gèrerai mais pas à travers ce Dictionnaire de ressources-ci. Sinon effectivement, je pourrais parcourir les différentes valeurs. Mais je vais simplifier mon propos ici. Ensuite, si j'ai un problème de style, je vais l'avoir également ici. Je fais un basedOn, ça c'est bon. Je n'ai plus de style de bouton, donc ça doit être bon sur la compilation. Je vais revenir maintenant dans mon App.xaml et j'ai un objet Application. Ce que je voulais vous montrer, c'est que l'application, c'est un objet qui va démarrer avec votre application, on a compris qu'il va s’instancier, et il y a un certain nombre de propriétés. Et, il y a un certain nombre d'événements. Donc, j'ai un certain nombre de propriété, mais j'ai aussi des événements, vous voyez les événements ici sont représentés sous formes d'éclairs et j'ai un événement qui s'appelle Startup. Donc, au démarrage je vais exécuter du code. Je fais un nouveau Gestionnaire d'événement qui va, donc, créer dans le code behind de mon App.xaml, un Application Startup et donc, vous vous en doutez bien, c'est du code qui va s'exécuter au moment où je vais lancer mon application. Je vais faire à ce niveau un dictionnaire qui sera disponible globalement dans mon application. Ce n'est pas forcément super beau, on essaye, en général d'éviter les variables globales dans une application, mais bon, là je vais faire quelque chose qui sera disponible partout pour récupérer les chaînes de caractères. Et puis, ici je vais alimenter ce dictionnaire grâce à mon Dictionnaire de ressources. Donc, on va voir comment on fait ça.

Découvrir Windows Presentation Foundation

Améliorez la qualité de vos interfaces graphiques avec WPF (Windows Presentation Foundation). Découvrez le langage XAML, définissez votre interface graphique manuellement, etc.

3h12 (40 vidéos)
Aucun commentaire n´est disponible actuellement
 
Logiciel :
Spécial abonnés
Date de parution :12 mai 2016

Votre formation est disponible en ligne avec option de téléchargement. Bonne nouvelle : vous ne devez pas choisir entre les deux. Dès que vous achetez une formation, vous disposez des deux options de consultation !

Le téléchargement vous permet de consulter la formation hors ligne et offre une interface plus conviviale. Si vous travaillez sur différents ordinateurs ou que vous ne voulez pas regarder la formation en une seule fois, connectez-vous sur cette page pour consulter en ligne les vidéos de la formation. Nous vous souhaitons un excellent apprentissage avec cette formation vidéo.

N'hésitez pas à nous contacter si vous avez des questions !