2017-03-05 1 views
0

J'ai une application WPF qui est localisée. Lorsque je définis le format Hindi (Inde) à partir de ControlPanel -> Région -> Formats, Suivre les lignes de code dans mon application WPF au début du lancement de mon application WPF ne lit pas CultureInfo.CurrentCulture (hi-IN) à la place, il utilise en-US. Pour cette raison, Mon application WPF n'utilise pas de message d'accueil à partir du fichier Resources.resx à cause de cela. Au lieu de cela, il est l'utilisation du message d'accueil de dans Resources.en.resxFichier Resource.resx par défaut non utilisé

Je reçois la bonne valeur dans CultureInfo.CurrentCulture.

Une idée de pourquoi les lignes de code ci-dessus ne prennent pas la bonne valeur?

+1

Des réclamations extraordinaires exigent des preuves extraordinaires, je ne vois pas. Tout comme .NET distingue CurrentCulture et CurrentUICulture, tout comme le système d'exploitation. Vous avez donc peut-être modifié les paramètres régionaux du système, mais pas la langue d'affichage. Ou vous avez peut-être oublié de vous déconnecter + vous connecter pour que le changement soit effectif. Demander de l'aide pour la configuration correcte sur superuser.com –

Répondre

1

Le paramètre ControlPanel-> Region-> Formats ne s'applique pas aux fichiers .resx. C'est dans ControlPanel-> Region-> Language que vous spécifiez la langue par défaut.

What is the difference between CurrentCulture and CurrentUICulture properties of CultureInfo in .NET?

Sinon, vous pouvez spécifier la langue par défaut de vos ressources dans votre classe (App.xaml.cs) App:

public partial class App : Application 
{ 
    protected override void OnStartup(StartupEventArgs e) 
    { 
     base.OnStartup(e); 

     Resources.Culture = System.Threading.Thread.CurrentThread.CurrentCulture; 
    } 
} 

S'il vous plaît consulter le lien suivant pour plus d'informations: https://social.msdn.microsoft.com/Forums/vstudio/en-US/6bfb8d13-3a86-4c10-a632-bb20c99d0535/localization-in-wpf-using-resx-files-for-different-languages?forum=wpf.