Wpf 如何在XAML中引用图像资源?
我在窗口上放置了一个Wpf 如何在XAML中引用图像资源?,wpf,Wpf,我在窗口上放置了一个Image控件,希望显示一个存储在名为“Resources.resx”的项目资源文件中的图像。资源文件中图像的名称为“搜索” 有人能告诉我怎么做吗?如果您的项目的图标文件夹中有一个图像,并且它的构建操作是“资源”,您可以这样引用它: <Image Source="/Icons/play_small.png" /> xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:UI="clr-namesp
Image
控件,希望显示一个存储在名为“Resources.resx”的项目资源文件中的图像。资源文件中图像的名称为“搜索”
有人能告诉我怎么做吗?如果您的项目的图标文件夹中有一个图像,并且它的构建操作是“资源”,您可以这样引用它:
<Image Source="/Icons/play_small.png" />
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:UI="clr-namespace:UI.Images"
如果映像位于资源文件夹中,并且其生成操作设置为资源。您可以在XAML中引用图像,如下所示:
"pack://application:,,,/Resources/Search.png"
假设资源文件夹下没有任何文件夹结构,并且它是一个应用程序。例如,我使用:
ImageSource="pack://application:,,,/Resources/RibbonImages/CloseButton.png"
当我在Resources文件夹下有一个名为RibbonImages的文件夹时 使用资源文件的好处之一是通过名称访问资源,因此图像可以更改,图像名称可以更改,只要资源保持最新,正确的图像就会显示出来 以下是一种更干净的方法来实现这一点: 假设Resources.resx位于“UI.Images”命名空间中,请在xaml中添加命名空间引用,如下所示:
<Image Source="/Icons/play_small.png" />
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:UI="clr-namespace:UI.Images"
按如下方式设置图像源:
<Image Source="/Icons/play_small.png" />
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:UI="clr-namespace:UI.Images"
其中“搜索”是资源的名称
“pack”名称空间代表什么?下面是关于packURI的信息:我已经有一段时间没有在应用程序中添加图像了。。。我可能在这里工作,但我认为您可能需要在WPF designer中显示图像之前构建应用程序。我现在无法测试它,但从上面的MSDN链接,对于引用的程序集,它说使用:“/ReferencedAssembly;component/Subfolder/ResourceFile.xaml”。其中“ReferencedAssembly”将是您的程序集名称。我写过这样的代码:“/MyProgram.Namespace;component/Resources/imagename.png”@wonea这是我的工作:pack://application:,,,/YourAppName;component/Resources/FileDialog.png“与生成操作“Resource”有一点不同:
注意开头的正斜杠,这意味着在根文件夹中查找。如果xaml文件不在根目录下,这是必要的,因为没有正斜杠,它将在与xaml文件相同的目录中启动搜索。为我工作,谢谢。在文件的“属性”选项卡上,将BuildAction设置为“Resource”,确保资源设置为public:实际上,这似乎不适用于图像,因为资源使用的是System.Drawing.Bitmap