4

文字列のローカリゼーションマークアップ拡張メソッドがあります。これは次のように適用できます。

<TextBlock Text="{l:Translate 'My string'}" />

このマークアップ拡張メソッドをバインディングの結果に適用するにはどうすればよいですか?つまり、そのようなもの:

<TextBlock Text="{l:Translate '{Binding Path=myStringParameter}'}" />
4

2 に答える 2

1

マークアップ拡張を使用すると、次のようになります。

{l:Translate {Binding Path=myStringParameter}}

XAML パーサーは、内部マークアップ拡張自体を処理します。古典的な WPF のように:{StaticResource {x:Type Button}}

于 2013-01-25T14:08:43.867 に答える
1

あなたのやり方では無理だと思いますが、次のように書き直すことができます。

 <TextBlock>
     <TextBlock.Text>
        <l:Translate>
           <Binding Path="myStringParameter" />
        </l:Translate>
     </TextBlock.Text>
 </TextBlock>
于 2013-01-25T13:57:29.980 に答える