多语言WPF C#应用中资源无法识别的问题求助
多语言WPF C#应用中资源无法识别的问题求助
各位开发者好,我正在开发一个C# WPF应用,需要实现多语言切换功能,目前遇到了资源无法被识别的问题,想请教下大家问题出在哪里。
我已经做了这些操作:
- 在Properties文件夹下创建了四个资源文件:
Resources.resx(默认)、Resources.en.resx(英文)、Resources.fr.resx(法文)、Resources.es.resx(西班牙文) - 每个资源文件都将自定义工具的命名空间设置为
MyApp.Language - 在MainWindow.xaml中添加了对应的命名空间引用:
<Window ... xmlns:lang="clr-namespace:MyApp.Language" ...
现在我想通过资源绑定来修改Label的内容,于是尝试写下这段XAML代码:
<Label Margin="0" Foreground="White" FontSize="20" FontWeight="Bold" Content="{x:Static lang:Partenza}" />
但编辑器直接报错:The member 'lang:Partenza' is not valid.,而且我输入lang:的时候,编辑器没有弹出任何资源项的智能提示,感觉这个命名空间根本没被正确识别。
另外,我已经把所有资源项的访问修饰符设置成Public了,而且是用ResX Manager来编辑这些资源文件的,应该格式方面没有问题。
实在找不到问题所在,有没有大佬能帮忙排查一下?
备注:内容来源于stack exchange,提问作者SteMMo




