如何存储资源路径

本文关键字:资源 路径 存储 何存储 | 更新日期: 2023-09-27 18:06:09

我正在编写的程序很难解释,因为它是用于非常具体的个人使用的,所以我将使用一个示例来使其易于理解:

我在项目中有一个名为Person的类,它存储一个图像和一个人的名字。所有图片都存储在项目资源中。

我如何保存资源路径/名称,以便我可以在主程序(不是Person类)上重用它?

例如,如果我在主程序中创建一个新的Person对象:
Person p = new Person("Michael", Project.Properties.Resources.image);

作为什么类型的变量我保存路径在Person类?

public Person(string name, ??? image)

请注意,稍后我将需要重用此图像,

为例:

this.imageBox.Image = p.image;

我尝试使用ImageBitmap对象,但它只是将imageBox更改为空白(我认为它将imageBox.Image设置为null)。此外,我很肯定,使用Bitmap将复制图像的数据,并使用更多的内存无缘无故)

我也尝试使用Image.FromFile和插入路径作为字符串,但它没有工作。

如何存储资源路径

如果你想要使用资源,你就不应该乱搞路径。它们被嵌入到程序集中,可以从那里被重用。

访问它们最简单的方法是使用生成的资源类Project.Properties.Resources.Picture。变量的类型为Image

public Person(string name, Image picture)

如果您愿意,您甚至可以通过从程序集中手动提取资源来访问它,但据我所知,对于这种情况似乎太多了。