2017-01-20 2 views
0

J'ai mon application UWP dans le Windows Store. J'ai mis en place plusieurs langues en utilisant la boîte à outils de l'application multilingue Mais en quelque sorte la localisation ne fonctionne tout simplement pas. J'ai essayé plusieurs fois en réglant ma langue d'affichage sur l'une de mes langues prises en charge, mais cela ne fonctionne tout simplement pas.La localisation ne fonctionne pas dans mon application UWP

J'ai aussi créé un exemple de projet pour que quelqu'un puisse m'aider. Voici le lien- https://1drv.ms/u/s!Ar2Oon4jkTNAqdkRe4R6gpr6DOXRDw

+0

Avez-vous essayé si cela fonctionne sur l'émulateur? Avez-vous essayé de changer la langue sur votre téléphone, puis installez l'application (pas après l'installation)? – Romasz

Répondre

1

Si vous utilisez le système de localisation « nouvelle » basée sur x:Uid introduit dans Windows 8.1 applications, s'il vous plaît consulter le tutoriel suivant qui vous donne un exemple en détail: https://www.codeproject.com/Articles/862152/Localization-in-Windows-Universal-Apps

Votre erreur est essentiellement le nom dans le fichier resw. Vous avez un TextBlock dans votre projet comme celui-ci:

<TextBlock x:Uid="Hi" /> 

Ensuite, dans votre resw-déposer votre chaîne traduite doit avoir:

  • Le nom Hi.Text (parce que vous voulez localiser le TextProperty du bloc)
  • La valeur que vous souhaitez afficher (par exemple Salut en anglais, Hallo en allemand, etc.)

Ce système vous permet de modifier votre interface utilisateur en fonction d'une langue, par ex. vous pouvez ajouter dans le fichier resw allemand seulement une deuxième chaîne avec le nom Hi.Foreground et la valeur Vert et la chaîne sera verte mais seulement en allemand.

Dans votre projet, il montre toujours Salut, parce que vous avez comme une valeur statique:

<TextBlock x:Uid="Hi" Text="Hi"></TextBlock> 

Si vous supprimez Text="Hi" alors rien ne sera affiché dans votre projet en cours à cause de ce que je l'ai expliqué ci-dessus.