将现有RESX文件导入C#/WPF项目的正确过程

将现有RESX文件导入C#/WPF项目的正确过程,c#,wpf,localization,resources,resx,C#,Wpf,Localization,Resources,Resx,我用键和字符串设置了自动生成的Resource.resx文件。我还有另外三个翻译给我的德语、法语和西班牙语的resx文件。我无法使本地化正常运行,我怀疑resx文件没有被正确调用。我通过将它们拖动到“属性”下的解决方案资源管理器中,将它们添加到项目中。我一直怀疑,仅仅把他们拉进来并不能在幕后建立适当的联系 现在我的问题完全有可能在别的地方。如果有人能告诉我这样添加资源文件是否合适,正确的方法是什么,这将节省我大量的时间。谢谢 Visual Studio中的Resx文件包括一个在构建时运行的特殊工

我用键和字符串设置了自动生成的Resource.resx文件。我还有另外三个翻译给我的德语、法语和西班牙语的resx文件。我无法使本地化正常运行,我怀疑resx文件没有被正确调用。我通过将它们拖动到“属性”下的解决方案资源管理器中,将它们添加到项目中。我一直怀疑,仅仅把他们拉进来并不能在幕后建立适当的联系


现在我的问题完全有可能在别的地方。如果有人能告诉我这样添加资源文件是否合适,正确的方法是什么,这将节省我大量的时间。谢谢

Visual Studio中的Resx文件包括一个在构建时运行的特殊工具,并将其转换为嵌入式资源。右键单击原始VS创建的resx文件,然后单击属性。您应该看到构建工具或类似的东西。还要注意资源类型(嵌入式等)。确保与手动添加的文件的这些设置相匹配

设置好后,您需要使用
CurrentUICulture
属性告诉.NET获取适当的资源。您可以选择在安装时或运行时更改区域性/语言。以下是一个全面的教程,介绍了您可以使用的各种选项:

也就是说,作为最佳实践,翻译后的Resx文件通常部署为附属程序集。主应用程序DLL/EXE仅包含与语言无关的资源文件。其他资源文件被编译成单独的程序集,并使用特定的命名约定并行部署。这允许您动态添加翻译、本地化等,即使在部署应用程序之后也是如此。这里有一个介绍: