我有ImageTextRadioButton
一个类似按钮的 RadioButton 的以下模板,其中包含文本和图像:
<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 中的 Content 只是一个包含图像文件的路径+文件名的字符串)。
这在运行模式下按预期工作,但在设计模式下它不显示图像。文本块显示正确的文本,如果我用Image.Source
硬编码值替换,图像也会正确显示。但是图像在源代码的设计模式下无法正确显示TemplateBinding
。