Exemplo n.º 1
0
        TranslationSource()
        {
            foreach (var culture in CultureInfo.GetCultures(CultureTypes.AllCultures))
            {
                if (culture.Equals(CultureInfo.InvariantCulture) || culture.Name == "en-US")
                {
                    continue;
                }

                if (culture.Name == "en")
                {
                    AvailableCultures.Add(culture);

                    continue;
                }

                try
                {
                    if (Properties.Resources.ResourceManager.GetResourceSet(culture, true, false) != null)
                    {
                        AvailableCultures.Add(culture);
                    }
                }
                catch
                {
                    // Ignore Culture Not Found and other Exceptions.
                }
            }

            var savedCulture = Settings.Instance.Language;

            CurrentCulture = AvailableCultures.FirstOrDefault(Culture => Culture.Name == savedCulture) ?? new CultureInfo("en");
        }
        private TranslationSource()
        {
            CultureInfo invariantEnglish = CultureInfo.GetCultureInfo("en");

            CultureInfo[]      cultures          = CultureInfo.GetCultures(CultureTypes.AllCultures);
            List <CultureInfo> availableCultures = new List <CultureInfo>();

            for (int i = 0; i < cultures.Length; i++)
            {
                CultureInfo culture = cultures[i];
                try
                {
                    ResourceSet resourceSet = ResourceManager.GetResourceSet(culture, true, false);

                    if (resourceSet != null)
                    {
                        if (culture.Name == string.Empty)
                        {
                            culture = invariantEnglish;
                        }

                        availableCultures.Add(culture);
                    }
                }
                catch
                {
                }
            }

            AvailableCultures = availableCultures.ToArray();

            CultureInfo uiCulture = CultureInfo.InstalledUICulture;

            CultureInfo availableCulture = AvailableCultures.FirstOrDefault(x => x.TwoLetterISOLanguageName == uiCulture.TwoLetterISOLanguageName) ?? invariantEnglish;

            currentCulture = availableCulture;
        }
Exemplo n.º 3
0
        private void LoadCultures()
        {
            var supportedCultures = new string[] { "en", "nl", "da", "ru" };

            foreach (var culture in supportedCultures)
            {
                var cultureInfo = CultureInfo.GetCultureInfo(culture);

                AvailableCultures.Add(new CultureItem
                {
                    DisplayName = cultureInfo.DisplayName.ToUpper(),
                    CultureKey  = cultureInfo.Name
                });
            }

            var settings = settingsRepository.GetSettings();

            SelectedCulture = AvailableCultures.FirstOrDefault
                              (
                x => x.CultureKey == settings.PreferredLocale
                              );

            Toggled = settings.EnableInAllProjects ? DisableText : EnableText;
        }