WPF C#无法通过源绑定显示图像

时间:2015-07-03 11:16:17

标签: c# wpf image

我无法在我的窗口上显示图像。

我想绑定源代码,但问题似乎更深入。

我有这两行:

<Image Grid.Column="1" Grid.Row="1" Source="{Binding EnemyImagePath}" />
<TextBlock Text="{Binding EnemyImagePath}" Grid.Column="0" Grid.Row="1" />

文本框正好显示了我的期望。 (/RSClick;component/Images/Enemies/001.png)。但是,图像根本没有显示。

我继续将XAML中的图像更改为:

<Image Grid.Column="1" Grid.Row="1" Source="Images/Enemies/001.png" />

一旦我这样做,图像就会显示出来。 (我从属性面板中选择了源代码来获取此信息)。我已将图像设置为嵌入式资源并始终复制 - 我已经仔细检查了它是否正在使用正确的文件夹结构在我的项目的BIN文件夹中创建。

当我运行程序时,如上图所示静态设置图像,图像不会在程序运行时显示。然而,它通常会在设计师中表现出来......

谢谢:)

2 个答案:

答案 0 :(得分:0)

您提供的路径称为Pack URI。 使用Pack URI时,您必须将 Build Action 设置为Resource

答案 1 :(得分:0)

你可以试试这个

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

public string ImgPath
{
    get { return "pack://application:,,,/AssemblyName;component/Images/image_to_use.png"; }
}