我在一个窗口上放置了一个 Image
控件,我想显示存储在项目资源文件 "Resources.resx" 中的图像。资源文件中图像的名称为 'Search'。
有人可以向我展示如何做到这一点吗?
我在一个窗口上放置了一个 Image
控件,我想显示存储在项目资源文件 "Resources.resx" 中的图像。资源文件中图像的名称为 'Search'。
有人可以向我展示如何做到这一点吗?
如果图片位于资源文件夹中且其构建操作设置为 Resource,则可以按以下方式在 XAML 中引用该图片:
"pack://application:,,,/Resources/Search.png"
假设您在Resources文件夹下没有任何文件夹结构,而且它是一个应用程序。例如,我使用:
ImageSource="pack://application:,,,/Resources/RibbonImages/CloseButton.png"
当我在资源文件夹下有一个名为RibbonImages的文件夹。
<Image Source="/Icons/play_small.png" />
这是最简单的方法。这是我能想到的仅基于资源的方式,没有任何项目文件:
var resourceManager = new ResourceManager(typeof (Resources));
var bitmap = resourceManager.GetObject("Search") as System.Drawing.Bitmap;
var memoryStream = new MemoryStream();
bitmap.Save(memoryStream, System.Drawing.Imaging.ImageFormat.Bmp);
memoryStream.Position = 0;
var bitmapImage = new BitmapImage();
bitmapImage.BeginInit();
bitmapImage.StreamSource = memoryStream;
bitmapImage.EndInit();
this.image1.Source = bitmapImage;
<Image Source="/Icons/play_small.png" />
注意开头有一个斜杠,这表示在根文件夹中查找。如果XAML文件不在根目录下,则需要这样做,因为如果没有斜杠,它将从与XAML文件相同的目录开始搜索。 - Greg Gumxmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:UI="clr-namespace:UI.Images"
将您的图像源设置为以下内容:
<Image Source={Binding {x:Static UI:Resources.Search}} />
其中“Search”是资源的名称。
<Image Source="MyRessourceDir\images\addButton.png"/>