Example #1
0
        public void ChangeLanguage(string lang)
        {
            string[] files = Directory.GetFiles(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Lang"), $"{lang}.*");
            if (files.Length < 1)
            {
                return;
            }
            StreamReader sr = new StreamReader(files.First());

            Translates.Clear();
            while (!sr.EndOfStream)
            {
                string line = sr.ReadLine();
                if (line.Contains("="))
                {
                    var match = Regex.Matches(line, "\"([^\"]+)\"");
                    var split = line.Split('=');
                    if (!Translates.ContainsKey(split.First()) && match.Count > 0 && match[0].Groups.Count > 0)
                    {
                        Translates.Add(split.First(), match[0].Groups[1].Value);
                    }
                }
            }
            Utils.MemoryCleaner();
            ProviderChanged?.Invoke(this, new ProviderChangedEventArgs(null));
        }
Example #2
0
        /// <summary>
        /// Calls the <see cref="ILocalizationProvider.ProviderChanged"/> event.
        /// </summary>
        /// <param name="target">The target object.</param>
        protected virtual void OnProviderChanged(DependencyObject target)
        {
            try
            {
                var assembly   = GetAssembly(target);
                var dictionary = GetDictionary(target);

                //if (!String.IsNullOrEmpty(assembly) && !String.IsNullOrEmpty(dictionary))
                //    GetResourceManager(assembly, dictionary);
            }
            catch
            {
            }

            ProviderChanged?.Invoke(this, new ProviderChangedEventArgs(target));
        }
Example #3
0
 /// <summary>
 /// Raise a <see cref="ILocalizationProvider.ProviderChanged"/> event.
 /// </summary>
 private void OnProviderChanged()
 {
     ProviderChanged?.Invoke(this, new ProviderChangedEventArgs(null));
 }
Example #4
0
 protected virtual void OnProviderChanged(ProviderChangedEventArgs args)
 {
     ProviderChanged?.Invoke(this, args);
 }