Je cours sous Windows 10. Lorsque j'ouvre "Paramètres de langue Région &" dans le menu Démarrer, je peux sélectionner un "Pays ou région". J'essaie d'obtenir cette valeur dans un programme C#.En C#, comment obtenir le "Pays ou région" sélectionné sous "Région et langue" dans Windows 10?
Je suis au Danemark. J'ai essayé de changer mon pays en Allemagne (voir screenshot), mais je ne peux pas obtenir mon code pour retourner en Allemagne. Redémarrer l'ordinateur n'a pas aidé. J'ai écrit du code inspiré de this thread.
Mon code ressemble à ceci (en essayant différentes choses à la fois, faire toutes les choses que la région/culture que je peux penser):
private static void Main(string[] args)
{
Thread.CurrentThread.CurrentCulture.ClearCachedData();
Thread.CurrentThread.CurrentUICulture.ClearCachedData();
var thread = new Thread(() => ((Action) (() =>
{
Console.WriteLine("Current culture: {0}", Thread.CurrentThread.CurrentCulture.Name);
Console.WriteLine("Current UI culture: {0}", Thread.CurrentThread.CurrentUICulture.Name);
Console.WriteLine("Installed UI culture: {0}", CultureInfo.InstalledUICulture.Name);
Console.WriteLine("Current region: {0}", RegionInfo.CurrentRegion.ThreeLetterISORegionName);
Console.WriteLine("System default LCID: {0}", GetSystemDefaultLCID());
}))());
thread.Start();
thread.Join();
Console.ReadKey();
}
[DllImport("kernel32.dll")]
private static extern uint GetSystemDefaultLCID();
Il produit:
Current culture: en-DK
Current UI culture: en-US
Installed UI culture: en-US
Current region: DNK
System default LCID: 1033
Comment puis-je obtenir mon programme pour détecter que j'ai choisi l'Allemagne? Quelle méthode ou propriété dois-je appeler? Et quels redémarrages ou effacement de cache peuvent être nécessaires?
[RegionInfo.CurrentRegion] (https://msdn.microsoft.com/en-us/library/system.globalization.regioninfo. currentrion (v = vs.110) .aspx). Il est temps de mettre à jour votre Google-Fu. –
Il existe un onglet "Administratif" dans le Panneau de configuration de la région [Win32], pas celui des paramètres modernes. Cliquez sur "Copy Settings" & "Change System Locale". Probablement pourrait résoudre votre demande –
J'ai finalement trouvé la réponse à ma question dans ce fil: https://stackoverflow.com/questions/8879259/get-current-location-as-specified-in-region-and-language-in- c-sharp –