/// <summary> /// Загружает список переводов /// </summary> /// <param name="path">Путь к файлу переводов</param> /// <param name="containerType">Тип контейнера</param> public void LoadTranslations(string path, Type containerType) { if (MessageBox.Show("Очистить текущие переводы?", "Загрузка переводов", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes) { Core.Translations.Clear(); TranslationConflicts.Clear(); } Core.Translations.LoadTranslations(path, containerType, (itm, trans) => { SortedItems <string> cur; if (_TranslationConflicts.TryGetValue(itm, out cur)) { cur.Add(trans); } else { _TranslationConflicts[itm] = new SortedItems <string>() { trans } }; }); NotifyPropertiesChanged(nameof(TranslationConflicts), nameof(HasTranslationConflicts)); }
/// <summary> /// Очищает список конфликтующих переводов /// </summary> public void ClearTranslationConflicts() { TranslationConflicts.Clear(); NotifyPropertiesChanged(nameof(TranslationConflicts), nameof(HasTranslationConflicts)); }