好的,我的项目资源大约有5 Images
。我想要做的是从我的项目资源中绑定Image.Source
。 Im C#编码非常简单,我只是这样做:
ImageHolder.Source = Propetries.Resources.Image1.png
。
如何在XAML中完成? 像这样:
<Image Source={??????}/>
提前致谢。
答案 0 :(得分:5)
当您将图像添加到resx文件时,Visual Studio将创建Resources文件夹并将您的图像文件放入其中。
要在绑定中使用此图像,您需要将构建操作从None更改为Resource。之后,您可以按如下方式绑定:
<Image Source="Resources/your_image_name.png"/>
您无法直接绑定到Propetries.Resources.your_image_name,因为您需要将System.Drawing.Bitmap转换为WPF BitmapSource。但是你可以绑定到Resource.resx中的字符串:
<TextBlock Text="{x:Static properties:Resources.YourStringResource}"></TextBlock>
在此处阅读如何将System.Darwing.Bitmap转换为WPF位图:Load a WPF BitmapImage from a System.Drawing.Bitmap
这里是关于绑定到resx文件中的值:Get values from *.resx files in XAML
答案 1 :(得分:2)
确保Build Action
的{{1}}标记为image
,然后您可以在XAML中执行此操作 -
Resource
假设<Image Source="Properties/Resources/a.png"/>
是项目中存在图像的文件夹结构。