我在使用.resx文件时遇到了一些麻烦。一切都是使用Windows MAT工具包扩展创建的(无论发生此问题)。
我有两种语言(en和es)。当我创建一个新项目并使用下面的代码时,它将起作用:
System.Threading.Thread.CurrentThread.CurrentUICulture = CultureInfo.GetCultureInfo("es");
string temp = MultilingualResources.strings.Hello;
该字符串以“ Hallo”返回,因此翻译有效。但是,当我在可视代码中的GoDot(c#)中执行此操作时,无论我指定哪种文化或UIculture,该字符串始终以英语返回,但代码完全相同。我尝试了资源管理器,结果是相同的。因此,基本上,它获取的是strings.resx值,而不是string.es.resx值。resx文件是嵌入式资源。知道为什么会这样以及如何使它起作用吗?
我也尝试使用
CultureInfo culture = CultureInfo.CreateSpecificCulture("es");
CultureInfo.DefaultThreadCurrentUICulture = culture;
在最近的Visual Studio(MAC)更新(版本8.6(内部版本4520))之后,问题开始出现在我身上
看看这个:
https://github.com/xamarin/xamarin-android/issues/4664#issuecomment-632986668
此解决方法解决了我的问题。
但是,有一个新的预览Visual Studio更新可以解决该问题。
编辑:问题已在新的Visual Studio版本中解决
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句