首页 > 解决方案 > 构建后不加载 WPF 图像

问题描述

首先我想提一下,我是 UI 设计的初学者。这实际上是我第一次尝试设计一个应用程序。

我已经在我的 MainWindow 应用程序中插入了一个图像,但是这个图像在构建之后没有显示出来。

我已经尝试了在 StackOverflow 上找到的所有内容,但似乎没有什么对我有用。我想要完成的是:有一个位置可以存储图像的元数据并在每次我想使用它时调用密钥。

我尝试的第一件事就是在我的 xaml 代码中插入图像。为此,我在我的项目中创建了一个名为的文件夹, Resources并包含了我的 image Info.png。然后我只是将图像插入到堆栈面板中的 XAML 代码中。图像出现在设计中,但不在构建之后。

<StackPanel Margin="435 297 55 50">
   <Image Source="Resources/Info.png"/>                    
</StackPanel> 

然后,在 Stack 上阅读了很多内容并在 Youtube 上观看了视频之后,我更改了图像的属性。将构建操作设置为Ressources并将复制到输出目录设置为Copy If Newer. 图像仍然没有出现。应用我在这里这里看到的,仍然没有显示。

然后我看到了一个 Youtube 视频,解释说我应该把我的图像放在我的 App.xaml 中,这样我就可以使用密钥来引用它。我这样做了:

<Application.Resources>
   <ResourceDictionary>
      <BitmapImage x:Key="Info" UriSource="Resources/Info.png"/>
   </ResourceDictionary>
</Application.Resources>

然后在我的 MainWindow.xaml 中,我像这样更改图像代码:

<StackPanel Margin="435 297 55 50">
   <Image Source="{StaticResource Info}"/>                    
</StackPanel>

这给了我一个错误,说找不到资源“信息”,即使我认为我可以在设计中看到图像。所以我把它改成这样:

<StackPanel Margin="435 297 55 50">
   <Image Source="{StaticResource ResourceKey=Info}"/>                    
</StackPanel>

但这仍然呈现相同的错误。然后不知何故,我结束了这个

<StackPanel Margin="435 297 55 50">
   <Image Source="{DynamicResource Info}"/>                    
</StackPanel>

这并没有呈现错误,但现在我在设计上和构建后都看不到图像。

我认为将图像放在 App.xaml 中以便我可以通过键引用它的想法是一个好主意,但它似乎不起作用。你能帮我解决这个问题吗?我正在使用 VS 2019

标签: c#wpfxaml

解决方案


推荐阅读