【问题标题】:Localization in Visual Studio 2008Visual Studio 2008 中的本地化
【发布时间】:2008-12-10 10:59:14
【问题描述】:

我正在尝试在 VS2008 中本地化桌面应用程序 (C#)。

我已经掌握了多种语言的本地化表单,并且我还有一个用于通用字符串的项目资源文件,但我无法理解如何创建该文件的多种语言版本!

它似乎没有在任何地方记录。

结果似乎是,如果我想生成我的应用程序的德语版本,我必须编辑通用资源文件 (Properties/Resources.resx),构建和部署应用程序,然后重新编辑一般资源文件回英文。

每次我想制作一个新的德语版本时,我都必须这样做。与本地化表单的工具相比,这似乎很笨重,我相信在 VS2008 中有更好的方法。有人知道是什么吗?

【问题讨论】:

    标签: visual-studio-2008 localization


    【解决方案1】:

    你是对的,我误读了这个问题。

    在这种情况下,您可能想尝试向项目中添加新项目,或者您添加现有资源文件的现有副本可能需要先在 VS 之外重命名它。

    选择“资源文件”

    将其命名为 Resource.de-DE.resx

    创建后,您可以将其移至 Properties 文件夹。

    打开文件,将顶部的访问修饰符改为内部,会设置为“无代码生成”

    将带有德语翻译的字符串添加到新资源文件中

    编译,当语言或线程 UI 文化发生变化时,它应该使用语言资源文件中的正确值。

    我的快速小测试运行良好,并根据需要切换。

    【讨论】:

      【解决方案2】:

      您可以使用Satellite Resource DLLs(注意:我只在 C++ 中使用过它们)。
      这是一个系统,您可以在其中为您想要支持的每种语言提供不同的资源 DLL。应用程序内将不再有资源(至少没有可能需要本地化的资源),因此翻译团队只需将资源 DLL 翻译成适当的语言。

      【讨论】:

        【解决方案3】:

        实际上 Visual Studio 已内置此功能。 在您希望本地化语言的表单上,将属性 Localizable 更改为 true。

        然后将 Language 属性更改为您希望为其设置资源文件的语言。 在您的情况下,请选择德语。

        将表单上的所有文本更改为德语文本。这将为您更改语言属性的每种语言创建一个额外的 resx 文件。

        完成后,您可以将另一个翻译后的表单资源文件更改为另一种语言或切换回默认值。

        现在,当计算机在设置为使用不同语言的机器上运行时,它会查找 resx 文件以匹配并切换所有控件以使用资源文件中提供的文本。

        您也可以通过更改 CurrentThread 上的 CurrentUICulture 来测试这一点

        这也是 MSDN 上的一个不错的演练:
        http://msdn.microsoft.com/en-us/library/y99d1cd3(VS.80).aspx

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2010-09-06
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多