将不同的语言字符串添加到单个资源文件中

时间:2010-01-21 11:37:44

标签: c# localization resources managed resx

我有一个小应用程序,其中包含资源(.resx)文件。

此文件包含一个图标和一个字符串,供另一个应用程序使用。图标将显示在按钮上,字符串是鼠标悬停文本。

我想要的是以某种方式添加多种语言的字符串,而不必创建额外的.resx文件。

有没有办法做到这一点?

我正在用C#编写我的应用程序,我想将它保存在.Net环境中,并保持资源管理。

感谢任何帮助 - 提前感谢。

2 个答案:

答案 0 :(得分:1)

这将滥用本地化在.net中的工作方式。它意味着像这样工作 - 你创建一个资源文件和中间包含.languageid.的本地化资源文件。

当然,您可以编写自己的“reader”方法,该方法会在资源名称后附加一些前缀,然后在文件中保存多个值(例如lv-formtitleen-formtitle,{{1}等等),但是 - 为什么?

如果问题是你不想将图标复制到多个资源文件 - 制作2个资源,一个用于图标,另一个用于字符串。仅本地化包含字符串的那个。

答案 1 :(得分:0)

当然,您可以在资源文件中添加更多字符串,但它们必须具有不同的名称并在您的应用程序中进行管理(例如 - “title”和“title-he”)。

然而,这样做会破坏资源文件的重点。

您应该使用其他资源文件,每个区域设置一个,即使您不想...