来自xaml的wpf图像在运行时未显示

时间:2014-07-28 07:27:28

标签: wpf image xaml

使用源图像将图像控制器添加到xaml。

图像显示在xaml上,但是当我运行程序时,源图像不会显示。

<Image x:Name="MainImage" Source="sample.jpg"></Image>

1 个答案:

答案 0 :(得分:2)

正如其他人所说,您应该将项目中的图像作为资源包含在内,除非您从IE用户图片文件夹中加载图像。但硬编码这样的路径是坏馅饼,特别是使用只能在您的机器上运行的驱动器号码。

如果您需要从用户磁盘加载图像,请绑定源,使用位图图像并将其加载到viewmodel中。

XAML:

<Image Source="{Binding YourImage}" />

在viewmodel中将YourImage属性定义为BitmapImage,然后从代码中加载它。

使用图像作为@Clemens上面提到的资源;

<Image Source="pack://application:,,,/yournamespace;component/Images/sample.jpg"/>

请注意long corny pack:// application:.. line。这不是必需的,但它使WPF在处理其他程序集时,我会查找图像.E插件或只是普通的DLL文件。如果不包括在内,则不会找到它们。也就是说,如果它们都未在您的应用程序项目中声明。

希望它有所帮助,

欢呼声

了Stian