C#.NET&外部组件的翻译

时间:2016-01-19 10:34:00

标签: c# visual-studio internationalization resources

我正在维护一个用C#2.0(VS2005)编写的程序。它有相当大的代码库,很多作者,它几乎是内部应用程序,但目前它也是我们使用它的客户之一。

应用程序是多语言的,自己的表单和组件的翻译工作正常。但是,有一个组件 - 由WeifenLuo提供的DockPanel Suite,我需要将它翻译成另一种语言(zh-CN) - 其中一个中国人将资源文件翻译成他的语言,现在我试图在应用程序中包含和使用,但我失败了 - 虽然整个应用程序都是中文版,但这个组件仍然是英文版。可以在github上找到未翻译的资源文件:https://github.com/dockpanelsuite/dockpanelsuite/blob/master/WinFormsUI/Docking/Strings.resx

怎么做?我尝试了几乎所有的东西,天真的方法(仅resgen并由al编译,并尝试将其用作附属程序集 - 也尝试ilmerge),然后在VS2013 Express中打开DockPanelSuite,添加resx作为Strings.zh-CN.resx,但没有任何作用,工具提示和其他仍然是英文。

尝试使用调试器进行操作,但调试器在tooltip = Strings.DockPaneCaption_ToolTipAutoHide处断开,但它没有进入Strings.Designer.cs中定义的getter

我被困住了,我不知道,怎么做。任何的想法?非常感谢!

1 个答案:

答案 0 :(得分:6)

我能够在一个非常简单的过程中翻译演示应用程序中的标签:

  • git克隆库
  • 复制&粘贴Strings.resx文件
  • 将副本重命名为Strings.pt-BR.resx
  • 编译,已完成(在我的情况下,我翻译了“关闭”标签)

enter image description here

但是,此项目包含许多 Strings.resx文件

enter image description here

你改变了所有这些吗?或者你刚改变一个? (也许是一个错误的,就像我在第一次尝试时所做的那样)