MSDN でそのような質問を見ましたが、回答がありませんでした。したがって、x:Uid と *.resw ファイルの特定のキー形式を使用して、すべてのコントロールをローカライズできます。しかし、x:String をローカライズするにはどうすればよいでしょうか。たとえば、次のようになります。
<x:String x:Key="AppName">My App</x:String>
私はいくつかの回避策を知っています。しかし、良いアプローチはありますか?
MSDN でそのような質問を見ましたが、回答がありませんでした。したがって、x:Uid と *.resw ファイルの特定のキー形式を使用して、すべてのコントロールをローカライズできます。しかし、x:String をローカライズするにはどうすればよいでしょうか。たとえば、次のようになります。
<x:String x:Key="AppName">My App</x:String>
私はいくつかの回避策を知っています。しかし、良いアプローチはありますか?
今は無理のようです。x:String
ローカライズが想定されていない文字列 (アプリ名など) にのみ使用する必要があります。それ以外の場合は、TextBlock
またはその他のテキスト コントロールを使用することをお勧めします
ここにそれを行うことに関するmsdnの投稿があります。その本質は次のようなものです。
<TextBlock x:Uid="MyTextBlock" FontSize="24.667" Text="Design Placeholder" />
x:Uid
ここで値に注意してください。これで、RESW ファイルのキーにマップされます。その開始キーを持つものには、プロパティがマージされます。そのため、キー名 MyTextBlock.Text と値 "Hello World" を使用して、RESW に "Text" のキーを含めることができ、ランタイムが代わりに置き換えを行います。
手順:
x:Uid
プロパティが定義されたテキストブロックを作成します。