如何从资源中读取图像作为流?

时间:2015-12-14 19:06:17

标签: c# resourcemanager

如何从C#桌面应用程序的资源文件夹中获取特定图像(作为流)?

在Visual Studio中,我将图像导入\ Resources文件夹,它具有File NameFull Path属性。我想用它的名字。

我的目标是这样做:

System.IO.Stream contentStream =  get the image stream from \Resources
System.Net.Mail.LinkedResource logo = new LinkedResource( contentStream);

1 个答案:

答案 0 :(得分:4)

您有几个简单的选择。

/ Resources文件夹不是一个特殊的文件夹。您仍然必须在解决方案资源管理器中选择要嵌入到程序集中的任何项目,然后从“属性”窗口中指定其构建类型为“嵌入式资源”。然后使用ResourceManager.GetStream将内容检索为流。

对于大多数情况,更简单的方法是使用Project Properties Designer窗口添加Resources.resx文件,然后将所需文件添加到Resources设计器。例如,您可以添加如下图像:

enter image description here

Visual Studio将为您生成代码,以便以这种方式检索您嵌入的文件。