好的,我在我的项目中有约5个图片资源。我想要做的是将一个图片源与我的项目资源绑定。在C#代码中这很容易实现,我只需要:
ImageHolder.Source = Properties.Resources.Image1.png
.
如何在XAML中实现呢? 类似于这样:
<Image Source={??????}/>
提前感谢您。
当您在resx文件中添加图片时,Visual Studio会创建Resources文件夹并将您的图片文件放入其中。
为了在绑定中使用此图像,您需要将构建操作从“None”更改为“Resource”。然后可以按以下方式进行绑定:
<Image Source="Resources/your_image_name.png"/>
因为你需要将 System.Drawing.Bitmap 转换成 WPF BitmapSource,所以无法直接绑定到 Propetries.Resources.your_image_name。但是,您可以绑定到 Resource.resx 中的字符串:
<TextBlock Text="{x:Static properties:Resources.YourStringResource}"></TextBlock>
阅读此处如何将 System.Drawing.Bitmap 转换为 WPF 位图: 从 System.Drawing.Bitmap 加载 WPF BitmapImage
这里涉及到绑定 resx 文件中的值:在 XAML 中获取 *.resx 文件的值
请确保你的image
文件的Build Action
已标记为Resource
,然后你可以在XAML中简单地执行以下操作 -
<Image Source="Properties/Resources/a.png"/>
Propetries/Resources
的文件夹结构,其中包含您的图像。