用C#更改语言

Bet*_*moo 13 .net c# windows multilingual cultureinfo

我正在Windows上用C#开发一个多语言程序

如何在某些操作上更改Windows编写语言...
例如,在焦点事件上从英语更改为阿拉伯语.

谢谢

Dr *_*bie 13

要选择一个全新的文化,请将其设置为CurrentThread.CurrentCulture新文化,例如设置为法语:

System.Globalization.CultureInfo ci = new System.Globalization.CultureInfo("fr-FR");
System.Threading.Thread.CurrentThread.CurrentCulture = ci;
Run Code Online (Sandbox Code Playgroud)

您可以在此处此处找到预定义CultureInfo名称的列表.

如果你想改变默认文化的某些方面,你可以获取当前线程的文化,使用它的名称来创建一个新的CultureInfo实例,并设置线程的新文化,并进行一些更改,例如,更改当前文化以使用'欧元符号:

System.Globalization.CultureInfo ci = new System.Globalization.CultureInfo( System.Threading.Thread.CurrentThread.CurrentCulture.Name);
ci.NumberFormat.CurrencySymbol = "€";
System.Threading.Thread.CurrentThread.CurrentCulture = ci;
Run Code Online (Sandbox Code Playgroud)

  • 在某些情况下,还需要设置System.Threading.Thread.CurrentThread.CurrentUICulture.(注意属性名称中间的"UI".) (3认同)