2010-10-25 46 views
2

我有一個相當明顯的問題。這裏的情況: - 我的WPF應用程序主要是用德語編寫的 - 我必須使用resx-files(公司中的標準方式) - 備用語言必須是英語。 - 德語資源是所有翻譯的基礎(包括英語)WPF和本地化

我試過很多與「[assembly:NeutralResourcesLanguage(」en「,UltimateResourceFallbackLocation.Satellite)]」的組合並設置在csproj文件中,但不幸的是,我找不到工作正常的人。

Thx提前爲您提供幫助! Fred

回答

1

如果英文資源總是有回退值,我建議將該語言嵌入主程序本身。這樣,您就可以使用:

[assembly: NeutralResourcesLanguage("en-US", UltimateResourceFallbackLocation.MainAssembly)] 

對於這個工作,去掉你做的的csproj的變化。另外請注意,您所設置的語言不能是中性的,雖然屬性名(即使用的en-US代替EN

這樣,衛星組件將只針對非英語語言的產生。

你可以在這裏閱讀更多:http://compositeextensions.codeplex.com/Thread/View.aspx?ThreadId=52910

+0

嗨, 這就是問題所在。主組件在所有其他本地化組件之前構建。我在主要編譯過程中唯一的資源是德國資源!然後,在下一步中,其他本地化程序集將建立在德國程序集的基礎上。 – Fred 2010-10-27 12:05:04

+0

那麼,在這種情況下,請嘗試像以前那樣使用UltimateResourceFallbackLocation.Satellite,但將文化設置爲en-US而不僅僅是en。 – 2010-11-01 15:17:27