В настоящее время я создаю приложение на C#, которое поддерживает французский, английский и испанский языки. Я использую файлы ресурсов (.resx), чтобы сохранить мой текст после this method Я нашел онлайн. Прямо сейчас, файлы ресурсов, которые у меня есть, следующие: TextLabels.resx, TextLabels.en.resx, TextLabels.fr.resx и TextLabels.es.resx.Многоязычное приложение в C#
Я использую следующий метод, чтобы связать свой ресурс в моей форме:
manager = new ResourceManager("MyProject.TextLabels", typeof(MyForm).Assembly);
изменить метки, когда я выбрал новый язык, я создал метод обновления изменяет текстовые атрибуты моих контейнеров с метод:
Text = manager.GetString("MY_STRING_VARIABLE", culture);
Кроме того, я должен быть уверен, чтобы изменить культуру, используемый, когда пользователь нажимает на нужный, используя следующий метод:
culture = CultureInfo.CreateSpecificCulture("es"); //changes the culture to spanish
Итак, вот моя проблема: я использую 64-битный компьютер с Windows 7, установленный на английском языке (я не уверен, что это важно), и этот метод работает отлично, все мои ярлыки изменены на нужный язык. Проблема возникает, когда я пытаюсь использовать свой проект на компьютере моего коллеги, который является 32-разрядным компьютером Windows 7 на французском языке. Используя его компьютер, похоже, что программа (которую я скомпилировала с помощью Visual Studio 2012) может найти только файл ресурсов по умолчанию (TextLabels.resx). Поэтому я затрудняюсь здесь и задаюсь вопросом 1. Является ли 32-разрядная система или французская установка Windows причиной моей проблемы или это что-то еще и как я могу заставить приложение работать на его машине?
Я думаю, нам нужно увидеть еще один код, чтобы определить точку, в которой ваше приложение загружает файлы ресурсов, отличные от значения по умолчанию. вы также протестировали на другом компьютере, который имеет 64 бит с французской установкой Windows 7 или 32-битным английским? – Renan
Кроме того, если вы используете локализованные двоичные файлы, убедитесь, что ваш коллега имеет их на своем компьютере. – Brian
Для тестирования убедитесь, что у вас оба имеют одинаковые региональные настройки в Windows (например, на английском языке США). Это вызвало у меня много проблем в прошлом и наличие общего набора настроек помогло диагностировать проблемы. – SolarBear