我有一个在 resx 文件中使用标准 .net 本地化的多语言 Windows 应用程序。
现在我有一个请求,让用户可以创建自己的最初不受支持的语言文件,并将它们添加到应用程序而不重新编译它。
实现这一目标的最佳方法是什么?
我正在考虑将语言移动到数据库,然后创建第二个工具,将翻译添加到数据库中,但如果可以动态添加 resx 文件,我宁愿保留当前的方法。
我有一个在 resx 文件中使用标准 .net 本地化的多语言 Windows 应用程序。
现在我有一个请求,让用户可以创建自己的最初不受支持的语言文件,并将它们添加到应用程序而不重新编译它。
实现这一目标的最佳方法是什么?
我正在考虑将语言移动到数据库,然后创建第二个工具,将翻译添加到数据库中,但如果可以动态添加 resx 文件,我宁愿保留当前的方法。
您可以使用的一种选择是将翻译保存在 XML 文件中。这样,用户只需将自己的 XML 文件拖放到存在翻译的文件夹中即可。
这正是我不使用 .NET 本地化而是自己编写的原因。
我将翻译存储在与 EXE 分开的文件中,有一个基于 Windows-Forms 的用于翻译的 GUI,我可以将它嵌入到任何应用程序中(并使用它的 WPF 克隆),并允许用户在不重新启动应用程序的情况下切换语言。
我不明白为什么有人会希望它有所不同,以及为什么微软创造了如此糟糕和有限的系统。
不幸的是,我现在无法发布我的系统,但我希望我能尽快发布。
您可以将翻译写入 .resx 文件,然后将该文件的位置添加到数据库中,然后当您想要翻译一些标签时,只需转到数据库查看该文件的位置,然后从中读取。我不确定它如何适合本地化库......