Silverlight XAML/C# アプリを Metro に変換しています。C# コードの場合は問題ありません。XAML については、私が読んだところによると、プロセスを簡素化するための XAML の新しいサポートがあります。ただし、同じ resx ファイルを再利用したいと考えているため、XAML の古い Silverlight メカニズム、つまりマークアップ拡張またはバインディングを好みます。MarkupExtension を試しましたが、サポートしていないようです。リソース バインディングを変換するにはどうすればよいですか。私の目標は、リソース ファイル内の名前と値のペアを再利用することなので、新しい Metro バインディング メカニズムを使用することはできません。
なにか提案を?
シルバーライトでこのようなもの:
XAML:
<sdk:TabItem Header="{Binding Path=Resource.charts, Source={StaticResource LocalizedStrings}}"/>
LocalizedStrings.cs
public partial class LocalizedStrings
{
private static Resources.Resource resource = new Resources.Resource();
public Resources.Resource Resource { get { return resource; } }
}
古いコードの再利用のために使用できない新しい Metro スタイルのローカリゼーション:
<TextBlock x:Uid="HelloWorld" />