当我将手机的语言更改为任何语言(例如法语)时,地图中的标签将更改为法语。
是否可以在地图控制中强制使用语言?我尝试使用地图的“语言”属性并将其更改为“fr”和“fr-FR”。它没有用。
当我将手机的语言更改为任何语言(例如法语)时,地图中的标签将更改为法语。
是否可以在地图控制中强制使用语言?我尝试使用地图的“语言”属性并将其更改为“fr”和“fr-FR”。它没有用。
其实很简单
如果您想更改全球语言:
private void Application_Launching(object sender, LaunchingEventArgs e)
{
Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("fr-FR");
Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("fr-FR");
}
private void Application_Activated(object sender, ActivatedEventArgs e)
{
Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("fr-FR");
Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("fr-FR");
}
如果你想获得单一资源:
CultureInfo c = new System.Globalization.CultureInfo("fr-FR");
var m = AppResources.ResourceManager.GetString(AppResources.MapControlTitle,c));
AppResourse
您的资源 (resx) 文件在哪里,并且是AppResources.MapControlTitle
想要获得的标签。
快乐编码(:
编辑
你能试试这个:
Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("fr-FR"); YourMapControl.Language = System.Windows.Markup.XmlLanguage.GetLanguage(Thread.CurrentThread.CurrentCulture.Name);
您可以尝试使用当前的线程文化。
尝试重新初始化文化
System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("fr-CH"); // For French Language ( or "fr-FR" )
在您的地图控件初始化之前。
理论上,线程将用法国文化重新初始化。^^
可能不是您希望的答案,但 Map Control 将始终遵循操作系统的区域设置。