大佬教程收集整理的这篇文章主要介绍了如何在Silverlight中即时切换UI文化数据绑定,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
文本显示如下:
2010年10月21日,星期四
我需要动态切换UI Culture,使用以下内容:
Thread.CurrentThread.CurrentCulture = Thread.CurrentThread.CurrentUICulture = new CultureInfo("de-de");
我试过这个强制绑定到recalc:
var bindingExpression = textBlock.GetBindingExpression(TextBlock.TextProperty); bindingExpression.updatesource();
但我仍然看到周四而不是Donnerstag ……
我该怎么办?有任何想法吗?
public sealed class Localizer : INotifyPropertyChanged { public Localizer() { Culture = Thread.CurrentThread.CurrentCulture; } XmlLanguage _language; public XmlLanguage Language { get { return _language; } private set { _language = value; RaiSEOnPropertyChanged("Language"); } } CultureInfo _culture; public CultureInfo Culture { get { return _culture; } set { Contract.requires(value != null); if (_culture == value) return; _culture = value; Thread.CurrentThread.CurrentCulture = Thread.CurrentThread.CurrentUICulture = value; Language = XmlLanguage.GetLanguage(value.Name); RaiSEOnPropertyChanged("Culture"); } } protected void RaiSEOnPropertyChanged(String propName) { var e = OnPropertyChanged; if (e != null) e(this,new PropertyChangedEventArgs(propName)); } public event PropertyChangedEventHandler OnPropertyChanged; }
现在将此实例添加到应用程序资源:
<nt:Localizer x:Key="Localizer"/>
现在将它绑定到您的根视觉(f.e.Frame,UserControl或PagE),如下所示:
<UserControl ... Language="{Binding Language,source={Staticresource Localizer}}">
以上是大佬教程为你收集整理的如何在Silverlight中即时切换UI文化数据绑定全部内容,希望文章能够帮你解决如何在Silverlight中即时切换UI文化数据绑定所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。