2016-03-14 67 views
0

图像是使用该代码添加到imageList1C#:获取图像路径添加到图像列表

imageList1.Images.Add("pic1", Image.FromFile("D:\\pic\\ha-i247.jpg")); 

我们怎样才能像添加到图像列表的每个图像的完整路径? (在这种情况下:“d:\ PIC \公顷i247.jpg”)

信息:我知道引用可以使用例如列表保存,我想了解一下图像列表本身的能力。

+1

得到它,得到的文件名?在什么时候?通过点击一个按钮? –

+0

你的问题非常不庄重。描述你正在尝试做什么。如果不是,我们可能简单地回答“将图像引用保存在图像列表之外”。 –

+1

我想简短的回答是,不,图像列表不保留图像来自哪里的列表。一旦你加载它只是一张图片在内存中,它甚至不记得它是否来自文件或其他东西 – BugFinder

回答

0

你实际上不能那样做。图像列表不会存储图像的来源。你可以把路径,而不是名称:

imageList1.Images.Add("D:\\pic\\ha-i247.jpg", Image.FromFile("D:\\pic\\ha-i247.jpg")); 

如果你想从那里得到它,你可以做这样的事情:

ImageList1.Images.Keys[0].ToString(); 

但它不是最好的解决办法,更好地保存它在图像列表之外

+0

不知道为什么把引用外部和未连接将会更好。 Keys集合很好! – TaW

0

是的,您可以这样做。 Images属性的类型是ImageCollection,它是Image对象的字典。 Image对象支持Tag对象属性,程序员可以在其中存储任何想要的信息。

您的代码可以读取;

Image img = Image.FromFile(fileName); 
img.Tag = fileName; 
imageList.Images.Add('Img1',img); 

您可以通过使用

imageList.Images['Img1'].Tag;