我正在寻找一种方法来实现包含表单、用户控件、默认 Winform 控件和 DevExpress 控件的 WinForm 应用程序的本地化。
此应用程序有两个重要要求
- 在运行时更改语言的可能性
- 客户更改翻译的可能性
- 添加新语言和新翻译的可能性
使用 resource.resx 不是满足此要求的正确解决方案,因为资源是嵌入的并且无法编辑。
也许已经有一个库、文章或类似的东西可以解决这个“问题”?否则,处理这些要求的最佳方法是什么-
Is 正在考虑一个数据库解决方案,但在性能方面我有点害怕。我在想类似的事情
- 实现 BaseForm 和 BaseUserControl
- 实现加载方法迭代 this.controls 并获取所有控件的标题/文本(也适用于嵌套控件) q:如何确保它是 label.text 而不是 textbox.text
- 查询数据库以获取翻译后的字幕
- 如果查询的标题不在数据库中,则创建一个带有标题的新行以供以后翻译
到目前为止,它还没有经过深思熟虑;)