2012-04-09 3 views
3

私はそれでテキストと画像でボタン風のRadioButtonのための次のテンプレートImageTextRadioButtonを持っている:ソースがデザインビューWPFのTemplateBindingであるテンプレートにイメージを表示する方法は?

<ControlTemplate TargetType="RadioButton" x:Key="ImageTextRadioButton"> 
    <Border Background="{TemplateBinding Background}" BorderBrush="Black" CornerRadius="8" BorderThickness="2"> 
    <Grid> 
     <Grid.ColumnDefinitions> 
     <ColumnDefinition Width=".5*" /> 
     <ColumnDefinition Width="1*" /> 
     </Grid.ColumnDefinitions> 
     <Image x:Name="ButtonImage" Grid.Column="0" Source="{TemplateBinding Content}" Stretch="None" /> 
     <TextBlock Grid.Column="1" VerticalAlignment="Center" Text="{TemplateBinding Content}" /> 
    </Grid> 
    </Border> 
</ControlTemplate> 

は(TemplateBindingsのコンテンツは、画像のパス+ファイル名を含む単なる文字列であることに注意してくださいファイル)。

これは実行モードでは正常に動作しますが、デザインモードでは画像は表示されません。テキストブロックには正しいテキストが表示され、Image.Sourceをハードコードされた値に置き換えると、イメージも正しく表示されます。しかし、画像はTemplateBindingのソースを持つデザインモードで正しく表示されません。

答えて

3

私は埋め込みリソースとして.pngファイルを持っていたので、コンバータはの代わりにファイル名を"/MyProject;component/images/" + value + ".png"として報告する必要がありました。

関連する問題