在WPF中使用文化访问资源文件C#

在WPF中使用文化访问资源文件C#

问题描述:

我正在写一个应用程序,其中的文本块可以用不同的语言显示注释。我试图使用我真正不理解的“文化”。在WPF中使用文化访问资源文件C#

enter image description here

我跟了几部影片,但仍然得到那么同样的错误信息:

enter image description here

以下是我已经添加了命名空间:

using System.Reflection; 
    using System.Globalization; 
    using System.Resources; 

我只是在添加switch语句之前测试概念:

 CultureInfo cult = CultureInfo.CreateSpecificCulture("en"); 

     Assembly lingua = Assembly.Load("Bailing Calculator"); 

     ResourceManager rm = new ResourceManager("Bailing Calculator.Resources.Res", lingua); 

     tbkPHDiameter.Text = rm.GetString("phDia", cult); 

我只是没有给ResourceManager的正确路径?感谢接下来的教育冲击!

enter image description here

更新你的代码看起来像:

CultureInfo cult = CultureInfo.CreateSpecificCulture("en-US"); 

    Assembly lingua = Assembly.Load("Bailing Calculator"); 
    ResourceManager rm = new ResourceManager(string.Format("Bailing_Calculator.Resources.{0}",cult.Name), lingua); 
tbkPHDiameter.Text = rm.GetString("phDia"); 

和更新资源文件名是你的目标文化名: 这样的文件名变成的样子:en-US

+0

我有复制和粘贴您的代码。我仍然得到相同的警报。 – dachizzle37

+0

您是否将解决方案资源管理器中的资源文件从en.resx重命名为en-Us.resx?我也更新了答案,因为命名空间不支持该空间。 –

+0

我做了调整。同样的警报。构建操作应该设置为什么? – dachizzle37