在XAML中使用RESX和Windows Phone 7

pic*_*ypg 4 xaml resx windows-phone-7

我目前正在制作一个基本的Windows Phone 7应用程序,我试图在RESX文件中存储字符串(目前只有那些),而不是直接将它们全部嵌入到XAML文件中,甚至添加代码来手动插入值.

在WPF中,要使用RESX文件中的属性,只需映射包含RESX的命名空间:

xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:resx="clr-namespace:Namespace.To.Your.Resx;assembly=SuppliedIfSeparate"
Run Code Online (Sandbox Code Playgroud)

然后使用它:

<TextBlock Text="{x:Static resx:Strings.AppTitle}" />
Run Code Online (Sandbox Code Playgroud)

但是,我尝试过,而且我已经读过,x:StaticSilverlight根本不支持,而且在WP7中不支持(看来他们提供了手段,但没有直接访问x:Static Silverlight 5/Mango中的(法语)) .

我发现这篇文章描述了一个AppConverter手动创建的类,以利用类似的功能,这是我目前正在做的事情.帖子的要点是在XAML页面中创建一个资源,该资源使用AppConverter类作为预先指定的键,然后使用它来替换x:Static绑定.

<TextBlock Text="{Binding Source={StaticResource AppTitle},Converter={StaticResource ResourceRetriever}}" />
Run Code Online (Sandbox Code Playgroud)

它工作正常,但与WPF实现(在页面甚至控件之间进行大量复制和粘贴)相比,它的冗长和容易出错.

目前针对这种情况的最佳做法是什么?