便携式库中的本地化

本文关键字:本地化 便携式 | 更新日期: 2023-09-27 18:09:01

我正试图在我的项目中使用PL,现在我坚持本地化。我移动了我的资源和LocalizedStrings到PL项目。我的LocalizedStrings是这样的:

namespace Activity.Localization
{
  public class LocalizedStrings : INotifyPropertyChanged
  {
    public LocalizedStrings()
    {
    }
    private static Resources.AppResources localizedResources = new Resources.AppResources();
    public Resources.AppResources LocalizedResources { get { return localizedResources; } }
    public void ResetResources()
    {
        OnPropertyChanged("LocalizedResources");
    }
    public event PropertyChangedEventHandler PropertyChanged;
    protected void OnPropertyChanged(string name)
    {
        var handler = PropertyChanged;
        if (handler != null)
        {
            handler(this, new PropertyChangedEventArgs(name));
        }
    }
  }
}

和资源在资源文件夹中(从Windows phone项目自动生成)。

现在在我的视图中,我有这个按钮(Windows Phone项目,MainPage.xaml):

<controls:MenuButton x:Name="btnStartGame" 
                             Text="{Binding Path=LocalizedResources.btnStartGame, Source={StaticResource localization:LocalizedStrings}}" 
                             Tap="btnStartGame_Click"
                             Height="80" Width="400" 
                             FontSize="30" Margin="12"/>

它编译和构建,但当应用程序启动时,我得到异常:

Cannot find a Resource with the Name/Key localization:LocalizedStrings 

所以我认为我必须做一些改变来本地化到可移植库,但哪一个?我怎样才能让它工作呢?由于

便携式库中的本地化

你需要在App.xaml:

中添加StaticResourcehttp://www.geekchamp.com/articles/localizing-a-windows-phone-app-step-by-step