我正在VB.NET中使用WPF for Windows 8构建一个应用程序,我需要从磁盘加载几个图像。 我不想将图像添加为项目的参考,我只是想按原样加载它们。
我已经通过互联网研究了MSDN上的"Imaging Overview"以及其他一些文章,但没有解决我的问题。
我使用了XAML和代码,但没有任何效果。我无法呈现图像。
Dim myimage As New Image myimage.Width = 200 Dim bitmapimage As New BitmapImage() bitmapimage.UriSource = New Uri("C:\Users\MyName\Documents\Database\image.jpg") myimage.Source = bitmapimage
XAML代码:
<Grid Background="{StaticResource ApplicationPageBackgroundThemeBrush}"> <Image HorizontalAlignment="Left" Height="265" Margin="191,145,0,0" VerticalAlignment="Top" Width="660"> <Image.Source> <BitmapImage UriSource="C:\Users\MyName\Documents\Database\image.jpg"/> </Image.Source> </Image> </Grid>
当我加载引用的图像(即Assets / Logo.png)时,它会正确加载它。 我还在应用程序清单中添加了所有必要的功能和解决方案。
答案 0 :(得分:0)
您的XAML看起来是正确的。也许图像路径无效。然而,它可以写得更简单:
<Image HorizontalAlignment="Left" Height="265" Margin="191,145,0,0" VerticalAlignment="Top" Width="660"
Source="C:\Users\MyName\Documents\Database\image.jpg" />
路径字符串会自动转换为ImageSource实例。
在代码中,您应该使用带有Uri参数的BitmapImage constructor。否则,您必须致电BeginInit和EndInit。
Dim uri As New Uri("C:\Users\MyName\Documents\Database\image.jpg")
Dim bitmapimage As New BitmapImage(uri)
myimage.Source = bitmapimage