2010-02-07 102 views
2

如何使我的应用程序使用不同的语言,因此人们可以选择其他语言,我需要翻译一些按钮,文本框和标签。有没有简单的方法呢?VB.NET本地化

回答

2

这并不容易,因为“这工作量很小”,但在“嘿,这不是很难理解”的方式相对容易。

基本上,您必须为不同的文化使用字符串资源,而不是将文本输入到标记中。

我发现了一个非常简单的例子你在这里:

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

当然,如果你只是在寻找翻译的东西供自己使用,来的快速和肮脏的手段翻译文本项目进入你的资源文件,你可以随时使用宝贝鱼:

http://babelfish.yahoo.com/

+0

喜,刚刚因为OP的类似的案件在这里,想和大家分享我发现:http://www.codeguru.com/columns/vb/ localization-in-vb.net.htm – am05mhz 2016-09-22 08:13:01

10

你需要你外部化r字符串资源。如果您只想本地化表单元素,则可以直接在Visual Studio中的WinForms设计器中执行此操作。

首先,在窗体设计器的属性网格中,将窗体的Localizable属性设置为true。然后,将Language属性设置为所需的目标语言后,为标签和文本框设置Text值。

VS将为您提取存储本地化值的.languagecode.resx文件。 本地化随后基于用户的语言环境在运行时自动发生。

如果您要根据使用者的喜好来覆盖该设置,设置Thread.CurrentThread.CurrentUICultureCurrentCulture首先形成初始化之前CultureInfo实例说明目标文化的基础上所需的语言,例如

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

将目标文化价值存储在应用程序设置或您认为合适的任何地方。

了解更多关于本地化.NET here

+0

+1。这是一个很好,简单的解释。 – David 2010-02-07 13:35:27