2010-02-07 2 views
2

Как я могу сделать мое приложение на другом языке, чтобы люди могли выбрать другой язык,VB.NET Локализация

Мне нужно перевести некоторые кнопки, текстовые поля и метки. Есть ли простой способ для этого?

ответ

2

Это не так просто, как в «очень маленькой работе», но это относительно легко в смысле «Эй, это не так сложно понять».

В принципе, вам нужно использовать строковые ресурсы для разных культур, вместо того, чтобы вводить текст в теги.

Я нашел довольно простой пример для вас здесь:

http://www.c-sharpcorner.com/uploadfile/ankithakur/globalization_localization_in_dotnet_csharp07032006023510am/globalization_localization_in_dotnet_csharp.aspx

Конечно, если вы просто ищете быстрые и грязные средства перевода вещи для собственного использования, или к переводить текстовые элементы, чтобы перейти в файлы ресурсов, вы всегда можете использовать Babel Fish:

http://babelfish.yahoo.com/

+0

привет, только что здесь из-за подобного случая ОП, и хочу поделиться тем, что я нашел: http://www.codeguru.com/columns/vb/ localization-in-vb.net.htm – am05mhz

10

вы должны экстернализовать вас r строк. Если вы хотите локализовать только элементы формы, вы можете сделать это непосредственно в дизайнере WinForms в Visual Studio.

Во-первых, в сетке свойств в конструкторе форм задайте свойство Localizable для формы в true. Затем, установив свойство Language на нужные целевые языки, задайте значения Text для ваших меток и текстовых полей.

VS будет извлекать файлы .languagecode.resx, сохраняя локализованные значения для вас. Затем локализация происходит автоматически во время выполнения на основе локали пользователя.

Если вы хотите изменить установки на основе предпочтений пользователя, установить Thread.CurrentThread.CurrentUICulture и CurrentCulture к CultureInfo например, описывающей целевой культуре до первой инициализации формы, основываясь на требуемом языке, например,

string targetCulture = "de"; 
Thread.CurrentThread.CurrentUICulture = CultureInfo.CreateSpecificCulture(targetCulture); 

Хранить целевое значение культуры в приложении Настройки или где угодно, где вы сочтете нужным.

Узнайте больше о локализации в .NET here

+0

+1. Это простое и простое объяснение. – David