使C#/ WPF应用程序支持不同语言的最佳方法是什么?
我希望能够让我的用户选择一种语言。
由于
答案 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建议的书。