在WPF中使用文化访问资源文件C#
问题描述:
我正在写一个应用程序,其中的文本块可以用不同的语言显示注释。我试图使用我真正不理解的“文化”。在WPF中使用文化访问资源文件C#
我跟了几部影片,但仍然得到那么同样的错误信息:
以下是我已经添加了命名空间:
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的正确路径?感谢接下来的教育冲击!
答
更新你的代码看起来像:
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
我有复制和粘贴您的代码。我仍然得到相同的警报。 – dachizzle37
您是否将解决方案资源管理器中的资源文件从en.resx重命名为en-Us.resx?我也更新了答案,因为命名空间不支持该空间。 –
我做了调整。同样的警报。构建操作应该设置为什么? – dachizzle37