使我的应用程序多语言

时间:2010-07-29 18:27:55

标签: c# wpf multilingual

使C#/ WPF应用程序支持不同语言的最佳方法是什么?

我希望能够让我的用户选择一种语言。

由于

4 个答案:

答案 0 :(得分:5)

有很多信息需要消化,但.Net框架内置支持Internationalization

我希望我能给你一个简单的例子,但它不是一个“拖放”的解决方案。您需要仔细考虑如何为此设计应用程序。

答案 1 :(得分:0)

选择以下优秀书籍:.NET Internationalization by Smith-Ferrier。我的下一个项目之一是将我们的应用程序国际化。这将是我的向导。

答案 2 :(得分:0)

如何标记要在应用程序中使用的字符串,然后使用单独的语言文件然后在运行时加载?

E.g。在我的表单上,我想用不同语言显示“First Name”,因此它使用令牌“firstnnamestring”存根,当表单被加载时,我将根据当前语言将文本替换为语言文件中配置的任何内容。

语言文件可以是简单的XML,其键值对为“token”和“display text”。

答案 3 :(得分:-1)

我们在说什么文字,这里?你总是可以使用case语句检查语言变量然后放置适当的语言,但是如果你要替换TON,这将变成一团糟。

回应你的评论:

意识到这可能不是最好的解决方案,因为我不熟悉.NET的内置支持。

你可以简单地保存一个包含该语言的变量,例如strLang,当你放置文本时,只需让你的程序运行一个case语句来输出正确的语言。

Switch (strLang)
{
 case "EN":
 //OUTPUT ENGLISH TEXT HERE
 break;
 case "SP":
 //OUTPUT SPANISH TEXT HERE
 break;
}

正如您所看到的,根据语言数量和文本数量,它可能会使您的代码混乱,因此您可能需要查看Randy建议的书。