Wpf 运行时的外部.resx文件

Wpf 运行时的外部.resx文件,wpf,localization,resx,Wpf,Localization,Resx,如果我想本地化WPF应用程序,我有什么选择。我想有一个选项来填充语言的.resx文件,这是可行的。但我需要在运行时从文件中获取语言 所以我的问题是:是否可以在WPF应用程序中获取external.resx。并在运行时更改语言?还是我从错误的角度看待这个问题?为什么不将resx文件与默认资源一起编译 将Thread.CurrentThread.CurrentUICulture设置为所需的区域性,然后调用以设置本地化属性 如果您想获得另一种文化,请使用。比如: public static s

如果我想本地化WPF应用程序,我有什么选择。我想有一个选项来填充语言的.resx文件,这是可行的。但我需要在运行时从文件中获取语言


所以我的问题是:是否可以在WPF应用程序中获取external.resx。并在运行时更改语言?还是我从错误的角度看待这个问题?

为什么不将resx文件与默认资源一起编译

Thread.CurrentThread.CurrentUICulture
设置为所需的区域性,然后调用以设置本地化属性

如果您想获得另一种文化,请使用。比如:

    public static string GetStringForCurrentUICulture(string name)
    {
        var value = _resourceManager.GetString(name, CultureInfo.CurrentUICulture);
        return value;
    }

要动态添加资源,请使用适当的ResourceManager,它允许您指定资源及其包含的程序集。

您可以使用
这有助于创建resx文件并映射到xaml

是的,我现在就做这件事,但我想知道是否有可能在不构建到应用程序的情况下获取这些文件。这就像我有3种语言在应用程序中,我想添加新的语言到一个应用程序,我需要再次建立这个应用程序,并使用它。但我想知道是否可以将resx(或其他类型)文件添加到应用程序目录中,并将此语言附加到现有语言。是的,我阅读了有关此工具的内容,但我想知道,如果我能够创建resx文件,只需将其添加到目录中,然后使用它们,而无需构建到应用程序(无需编译)@IgorisAzanovas我正在寻找相同的功能,你有没有找到解决方案?@faldeland最后我制作了本地化包装器,它使用数据库,如果找不到,它会尝试从资源中访问。我当时找不到更好的解决方案。我正在寻找相同的功能,你有没有找到解决方案?