如何:检索作为嵌入资源的图像
更新:2007 年 11 月
本示例检索一个图像,该图像是程序集的嵌入资源。
过程
设置此示例
创建一个 Windows 窗体应用程序,其中包含一个名为 pictureBox1 的 PictureBox 控件。
将下面的代码示例添加到 Form1_Load 事件处理程序中。
System.Reflection.Assembly thisExe; thisExe = System.Reflection.Assembly.GetExecutingAssembly(); System.IO.Stream file = thisExe.GetManifestResourceStream("AssemblyName.ImageFile.jpg"); this.pictureBox1.Image = Image.FromStream(file);
将一个现有图像文件添加到该项目中,并在“解决方案资源管理器”中将其“生成操作”属性设置为“嵌入的资源”。
将 "AssemblyName.ImageFile.jpg" 替换为程序集中的资源的名称。
可以使用 Assembly 对象的 GetManifestResourceNames 方法查找该资源的名称。
可靠编程
以下情况可能会导致异常:
嵌入的资源不在程序集中,因此调用 GetManifestResourceStream 将返回 Nothing。
该文件类型(即,文件扩展名)可能没有关联的应用程序。