WinRT中是否有任何支持多语言应用程序的内置工具?例如,我有几个按钮,文本内容为“添加”,“删除”,“编辑”英文,它应该是“Dodaj”,“Usun”,“Edytuj”等波兰语。我可以自动将此文本设置为用户语言吗? (以及如何自动检测用户语言?)。我可以使用语言模型并将按钮内容绑定到ViewModel属性,但不是存在更好的方法来做到这一点吗?多语言WinRT应用程序
0
A
回答
2
这是很好的支持,并且MS这里有一个很好的例子:http://code.msdn.microsoft.com/windowsapps/Application-resources-and-cd0c6eaa
使用x设置的“静态”内容的文本:UID如果这些元素的数据绑定不起作用。例如你有一个观察的集合在你的视图模型包含的用户名视图模型,你尝试做以下(伪代码!): -
<List ItemSource={Binding Users}>
<List.ItemTemplate>
<DataTemplate>
<StackPanel>
<TextBlock x:uid="ByUser"/>
<TextBlock Text={Binding Username}/>
</StackPanel>
</DataTemplate>
</List.ItemTemplate>
</List>
应设置第一个文本框的文本(基于UID ByUser)将不会被设置。我通过在全球化服务中包装ResourceLoader
并将其传递给我的“UsersName”视图模型来解决这个问题,然后我将公开一个名为ByUserText的属性,并对其进行绑定。不理想,希望这会得到解决。
,你将需要使用一个全球化的服务为唯一的其他东西是一样的东西消息框等
这是全球化的服务,我绕过: -
using Windows.ApplicationModel.Resources;
public class GlobalisationService : IGlobalisationService
{
private readonly ResourceLoader resourceLoader;
public GlobalisationService()
{
resourceLoader = new ResourceLoader();
}
public string GetString(string key)
{
try
{
return resourceLoader.GetString(key);
}
catch
{
return "NOT FOUND: " + key;
}
}
public string this[string key]
{
get
{
return GetString(key);
}
}
}
相关问题
- 1. 多语言应用程序vs很多应用程序
- 2. 如何在WinRT应用程序中获得实际的语言?
- 3. 用C语言创建一个多语言应用程序#
- 4. 多语言应用程序编码
- 5. Xamarin形式多语言应用程序
- 6. 多语言应用程序UI
- 7. 多种语言的Android应用程序
- 8. 多语言IOS应用程序
- 9. Phonegap应用程序的多种语言
- 10. 多语言应用程序图像
- 11. 多语言Office 365应用程序
- 12. 使多语言Android应用程序
- 13. 多种语言的应用程序
- 14. Installshield多语言支持应用程序
- 15. Iphone中的多语言应用程序
- 16. Asp.net多语言网络应用程序
- 17. 多语言Flex应用程序
- 18. 多语言AJAX应用程序
- 19. 多种语言的应用程序
- 20. android多语言应用程序
- 21. 多语言iOS应用程序
- 22. UWP应用程序在多种语言
- 23. 多语言winforms应用程序
- 24. K2 blackpearl的多语言应用程序
- 25. WP7中的多语言应用程序
- 26. mvc .net多语言应用程序
- 27. jQuery Mobile的多语言应用程序
- 28. 多语言快递应用程序
- 29. 多语言android应用程序?
- 30. 多语言动态Silverlight应用程序