我目前正在尝试使用以下代码在我的 Xaml 中在设计时显示图像:

Xml:

<Canvas Grid.ColumnSpan="2" Margin="0,0,0,0">
    <Image Canvas.ZIndex="1" Source="{Binding Coupon.OverlayImage}"  Margin="0,-21,-76,108" Stretch="Fill" x:Name="PrintImageContextMenu" />
</Canvas>

C# 设计时间:
Coupon.OverlayImage = Image.FromFile(@"C:\Temp\Images\TestImage.png");

VB 中 OverlayImage 的原始属性(旧代码):
private _overlayImage as Image

Public Property OverlayImage As Image
    Get
        Return _overlayImage
    End Get
    Set
        _overlayImage = value
        NotifyPropertyChanged("OverlayImage")
    End Set
End Property

第一次查看时,我看不出有什么问题,但它没有显示,即使在运行时也是如此。任何想法,将不胜感激。

最佳答案

在您使用 Image 类的任何地方,我认为您使用 System.Drawing.Image 是因为 WPF Image 控件没有 FromFile() 方法。您不能将其用作 WPF 图像控件的源。您必须改为尝试使用 IValueConverter 将 Image 转换为 BitmapSource/ImageSource。

10-08 04:00