窗口的本地化形成c#

Tho*_*mas 1 c#

我见过人们使用资源本地化他们的形式.将文本数据放入资源文件中,并在资源文件中从Windows窗体应用程序中获取这些文本数据.但我的要求是不同的,当我的应用程序将在任何PC上,并且该PC语言设置为德语或法语时,我的应用程序的所有控制标题将以该语言显示.我怎么能这样做....我需要写什么代码.我需要编写非常少的代码来实现它.

static int Main( string[] argv )
{
CultureInfo ci = CultureInfo.InstalledUICulture ;

Console.WriteLine("Default Language Info:" ) ;
Console.WriteLine("* Name: {0}"                    , ci.Name ) ;
Console.WriteLine("* Display Name: {0}"            , ci.DisplayName ) ;
Console.WriteLine("* English Name: {0}"            , ci.EnglishName ) ;
Console.WriteLine("* 2-letter ISO Name: {0}"       , ci.TwoLetterISOLanguageName ) ;
Console.WriteLine("* 3-letter ISO Name: {0}"       , ci.ThreeLetterISOLanguageName ) ;
Console.WriteLine("* 3-letter Win32 API Name: {0}" ,    ci.ThreeLetterWindowsLanguageName   
) ;

return 0 ;
}
Run Code Online (Sandbox Code Playgroud)

以上方式我可以获得操作系统的当前语言集.请详细讨论这个问题.谢谢

Tho*_*mar 6

Visual Studio包含本地化功能.您使用默认语言(例如英语)设计表单,然后在表单的属性中,您可以设置"Localizable"属性true并选择要翻译的另一种语言.

选择语言后,将标题更改为相应的语言.然后你选择另一种语言,改变字幕等.

请注意: 只能添加新控件或删除默认语言的控件 - 否则控件将不会显示为其他翻译!

然后,.NET框架将选择显示哪种语言.

这同样适用于资源文件 - 本地化.resx文件,创建副本并将其重命名以匹配区域设置(例如:),并将其resources.DE.resx添加到项目中.

正如Daryal在评论中所说,可以在这里找到更多信息.