Я достиг динамической локализации в Silverlight, используя следующую запись в блоге:
http://www.wintellect.com/CS/blogs/jprosise/archive/2010/06/21/dynamic-localization-in-silverlight.aspx
Решение отлично работает. Я могу изменить параметры языка, и он отлично работает.
Но, как уже упоминалось в статье, я не могу получить поддержку времени разработки.
Для этого я разработал класс Resource Wrapper:
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
В моем Home.xaml я добавил следующие строки кода:
<HyperlinkButton Content="{Binding Source={StaticResource ResourceWrapper},Path=ApplnResources.LocalizationResources.CommentsEntry/>
Сделав это, я получил поддержку по времени разработки. Но теперь, когда я запускаю свое приложение и меняю язык, оно не меняется?
Может кто-нибудь помочь мне с этим решением?