Silverlight 4中用于动态定位的资源包装器



我使用以下博客文章在Silverlight中实现了动态定位:http://www.wintellect.com/CS/blogs/jprosise/archive/2010/06/21/dynamic-localization-in-silverlight.aspx

这个解决方案非常有效。我可以改变我的语言选项,它工作得很好。

但是正如文章中提到的,我无法获得设计时支持。我为此设计了一个资源包装器类:

 public sealed class ResourceWrapper  
    {
        //private static readonly ObservableResources<Resources> appResources = new ObservableResources<Resources>(resx);
        private  ObservableResources<Resources> appResources = new ObservableResources<Resources>(new Resources());
        public ObservableResources<Resources> ApplnResources
        {
            get { return appResources; }
        }
        public event PropertyChangedEventHandler PropertyChanged;
        public void UpdateBindings()
        {
            if (PropertyChanged != null)
            {
                PropertyChanged(this, new PropertyChangedEventArgs("ApplnResources"));
            }
        }
    }
在我的app.xaml中,我添加了ResourceWrapper类在我家。我添加了以下代码行:
<HyperlinkButton Content="{Binding Source={StaticResource ResourceWrapper},Path=ApplnResources.LocalizationResources.CommentsEntry/>

通过这样做,我得到了我的设计时间支持。但现在,当我运行我的应用程序和改变我的语言它不改变吗?

有人能帮我解决这个问题吗?

你的类ResourceWrapper应该实现INotifyPropertyChanged事件。

最新更新