Во-первых, настройте язык проекта по умолчанию, сделайте это в Свойствах проекта, в диалоговом окне Информация о сборке внизу есть настройка «Нейтральный язык».
Установите для этого язык по умолчанию, основной язык, если хотите.
Затем убедитесь, что форма на том же языке, что и сейчас,
Чтобы начать перевод и изменение формы для соответствия другому языку, сначала установите для свойства «Localizable» формы значение true, а затем измените свойство Language на второй (или третий, четвертый и т. Д.) Язык.
Как только вы изменили это, вы можете начать вносить изменения. Убедитесь, что вы не удаляете элементов в форме, а просто устанавливаете их невидимыми. Удаление выполняется для всех языков, но невидимое, таким образом, будет установлено только для текущего языка.
Продолжайте переключаться между языками, чтобы вносить изменения.
Чтобы протестировать вашу программу на определенном языке, выполните это в начале вашего Main
метода:
Thread.CurrentThread.CurrentCulture = new CultureInfo("code of that other language");
Thread.CurrentThread.CurrentUICulture = new CultureInfo("code of that other language");
Например, чтобы протестировать его на языке "норвежский, букмол", который является моим основным языком, вы должны использовать код "nb-NO". Чтобы найти код, который вам нужно использовать, после того, как вы изменили язык своей формы на язык, для которого хотите локализовать, и сохранили, в обозревателе решений будет добавлен новый файл с правильным именем.
Например, для Form1 будут присутствовать следующие файлы:
Form1.cs
Form1.designer.cs
Form1.nb-NO.resx <-- here's the localized content
Form1.resx
Теперь, сделав это, есть множество других вещей, о которых вам нужно знать при создании локализованного приложения, я предлагаю вам прочитать другие вопросы о SO и в Интернете с дополнительной информацией, например: