0

我无法将图像绑定到转换器的源?

<!-- Works fine -->
<Image Grid.Row="0" Grid.Column="4" Grid.RowSpan="6" Margin="5">     
      <Image.Source>
          C:\pictures\Becker.png
      </Image.Source>
</Image>


<!-- Works not -->
<Image Source="{Binding ClientPicture, Converter={StaticResource clientpictureconv}, ConverterParameter={Binding ClientNumber}}"/>

在转换器中,我返回硬编码图片 Uri(从顶部)。如果我用文本块替换图像,则会显示完整的 uri。但图片中的图片不是。

我能做些什么?

4

1 回答 1

4

那是因为 Image.Source 不带URI对象;它需要一个ImageSource对象。您的转换器应该创建其中之一并将其传回。把它放在你的转换器中,它会工作:

return new BitmapImage(myUri);

请注意,这BitmapImage是一种ImageSource.

您的第一个示例有效,因为 XAML 为您隐式地将 URI 字符串转换为 ImageSource。当您使用转换器显式传回 URI 对象时,它无法做到这一点。

于 2012-04-13T06:10:47.727 回答