目前,我正试图在我的Xaml中获得一个在设计时显示的图像,代码如下:
Xaml:
<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
在第一次视图中,我看不到任何问题,但它没有显示,即使在运行时也是如此。任何想法都将不胜感激。
发布于 2015-12-01 04:26:43
无论您在哪里使用Image
类,我都认为您使用了System.Drawing.Image
,因为WPF控件没有FromFile()
方法。不能将其用作WPF图像控件的源。您必须尝试使用IValueConverter将Image
转换为BitmapSource/ImageSource。
发布于 2015-12-01 04:26:14
可以使用图像回退值来设置默认的image.Here,这是一个简单的例子。
<Window.Resources>
<BitmapImage x:Key="ImageSource" UriSource="C:\Temp\Images\TestImage.png"/>
</Window.Resources>
<Grid>
<Image
HorizontalAlignment="Left"
Source="{Binding SourceImage,FallbackValue={StaticResource ImageSource}}"/>
</Grid>
发布于 2015-12-01 04:43:12
尝尝这个,
var uri = new Uri(Coupon.OverlayImage);
var bitmap = new BitmapImage(uri);
ImageName.Source = bitmap;
https://stackoverflow.com/questions/34020199
复制相似问题