如何让我的C#/WPF应用程序支持多种语言?
我希望能够让用户选择语言。
谢谢。
有很多信息需要消化,但是.Net框架内置了对国际化的支持。
我希望能够给你一个简单的例子,但这不是一个“拖放”解决方案。您需要认真考虑如何设计应用程序以实现此目的。
推荐一本优秀的书籍:.NET国际化 by Smith-Ferrier
。我的下一个项目之一就是将我们的应用程序国际化,这本书将成为我的指南。
我们需要翻译多少文字?你可以使用检查语言变量并放置适当语言的情况语句,但如果你有很多要替换的内容,这将变成一团糟。
回复您的评论:
请注意,这可能不是最好的解决方案,因为我不熟悉.NET的内置支持。
您可以简单地保留包含语言的变量,例如strLang,并在放置文本时运行一个case语句来输出正确的语言。
Switch (strLang)
{
case "EN":
//OUTPUT ENGLISH TEXT HERE
break;
case "SP":
//OUTPUT SPANISH TEXT HERE
break;
}
正如你所看到的,根据语言数量和文本量,它确实可能会使你的代码变得混乱不堪,因此你可能需要查看Randy建议的书籍。