在一个多语种的.NET应用程序文本和按钮之间的混合语言
-
12-09-2019 - |
题
有存在(我)用的MessageBox显示的问题。
我的应用程序是多种语言(英语/德国)。
我测试在Windows的语言是英文。 设置应用德语工作正常,但显示一个MessageBox创建语言的混合物。消息是在德国(通过资源文件),并在消息框按钮的语言是英文(无不是JA Nein的是)。我的客户只使用德语Windows版本,并可以有相反的problem->按钮,在英语和德语(消息框)的文本,如果他想使用的应用程序的英文。
能否.NET语言包解决这些矛盾?装置 - >安装.NET语言包,以避免这种语言混合物
解决方案
.NET语言包的不的影响OS元素的文本(当然!)。因此,他们将不会影响WinForms的消息框按钮的文字,因为它们使用Win32 MessageBox函数。这意味着,如果您的客户的Windows的德语版本,那么所有的股票UI元素 - 如按钮 - 将在德国不管。如果他有Vista的,他可以购买额外的语言包,但即使如此,只有一个可以在任何给定时间对用户活动的(而不是为特定的应用程序)。
如果您的客户希望使用英语的应用程序而已,那么无论他用英文的Windows版本,或者你有你定义按钮标签自己编写自己的消息框。
其他提示
这个问题目前有一个低优先级的我。 另一个尝试可以是:
使用System.Windows.Forms.MessageBox.Show代替System.Windows.MessageBox.Show的
http://www.codeproject.com/KB/miscctrl/Localizing_MessageBox.aspx
如果有人已经从CodeProject上这个项目经验:请回复:)
不隶属于 StackOverflow