我的应用程序中有一个“GUI字符串”.resx文件,其中包含我显示的所有字符串。我显然可以通过直接访问每个字符串
Resources.Resource_GUI_Strings.CameraSettings_BrightnessLabel
但是如何列出.resx文件中的所有设置,因为它们(名称,值)对是我唯一使用反射的选项?
我想列出所有对(即CameraSettings_BrightnessLabel&“Brightness”),以便用户可以编辑每个项目的字符串。这样他们就可以本地化GUI。我不想完全国际化应用程序,只要用户能够自己做这些要求。
因此,我需要能够从.resx文件中读取值对,然后在用户编辑它们时将其写回。
只是要添加我想在运行时在应用程序本身内执行此操作,因此我无法解析磁盘上的.resx文件。
答案 0 :(得分:2)
通常我会使用ResXResourceReader和ResXResourceWriter类,但我的猜测是你的resx文件将在运行时被锁定。您可能最好将文本存储在数据库而不是资源文件中以解决此问题。
This answer显示了如何使自定义资源提供程序/资源管理器在数据库中存储/编辑资源。或者,您可以完全放弃资源模型并推出自己的解决方案。