对于类似按钮的RadioButton,我有以下模板ImageTextRadioButton
,其中包含文字和图片:
<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
源的设计模式下,图像无法正确显示。
答案 0 :(得分:3)
Argh,我将.png文件作为嵌入资源,因此转换器需要将文件名报告为"/MyProject;component/images/" + value + ".png"
而不是"../images/" + value + ".png"
一旦我对转换器进行了更改,一切正常。