5
Answers

add image from folder to a list

Violeta Popa

Violeta Popa

11y
1k
1
Hi :) I have a folder which contains several images and a list<image>. I want to add in the list, the images from the folder, and everytime i add a new image in the folder, to be added in the list. Some ideas? thanks!

I've tried this ;))

 string path="C:\\Users\\Vio\\Desktop\\Gestiune asigurari auto\\imagini";
            string[] jpg = Directory.GetFiles(path, "*.jpg", SearchOption.AllDirectories);
            string[] png = Directory.GetFiles(path, "*.png", SearchOption.AllDirectories);
            string[] bmp = Directory.GetFiles(path, "*.bmp", SearchOption.AllDirectories);
            string[] gif = Directory.GetFiles(path, "*.gif", SearchOption.AllDirectories);
            int total=jpg.Length+png.Length+bmp.Length+gif.Length;
            Image[] image;

            List<Image> images = new List<Image>();

            for (int i = 0; i < total; i++)
            {
                images.Add(image[i]);
            } but :-??
Answers (5)
0
Vulpes

Vulpes

NA 98.3k 1.5m 11y
Try:

string path="C:\\Users\\Vio\\Desktop\\Gestiune asigurari auto\\imagini";
string[] jpg = Directory.GetFiles(path, "*.jpg", SearchOption.AllDirectories);
string[] png = Directory.GetFiles(path, "*.png", SearchOption.AllDirectories);
string[] bmp = Directory.GetFiles(path, "*.bmp", SearchOption.AllDirectories);
string[] gif = Directory.GetFiles(path, "*.gif", SearchOption.AllDirectories);

List<Image> images = new List<Image>();
foreach(string s in jpg) images.Add(Image.FromFile(s));
foreach(string s in png) images.Add(Image.FromFile(s));
foreach(string s in bmp) images.Add(Image.FromFile(s));
foreach(string s in gif) images.Add(Image.FromFile(s));


Accepted
0
Vulpes

Vulpes

NA 98.3k 1.5m 11y
The column needs to be of type DataGridViewImageColumn for the images to show up.

Are you sure that this is what you've got?
0
Violeta Popa

Violeta Popa

NA 137 110.6k 11y
doesn't work :(
0
Vulpes

Vulpes

NA 98.3k 1.5m 11y
Try:

 for (int i = 0; i < total; i++)
 {
     dgv.Rows[i].Cells["societate"].Value = images[i];
 }
0
Violeta Popa

Violeta Popa

NA 137 110.6k 11y
Thanks! I have one last question, if you'd like to answer..I'm trying to add this images in datagridview cells. I've declared the column of type image. This is the code:

           Acasa main = (Acasa)Application.OpenForms["Acasa"];
            DataGridView dgv = main.politaGridView;
            List<Image> images = new List<Image>();
            string path = "C:\\Users\\Vio\\Desktop\\Gestiune asigurari auto\\imagini";
            string[] jpg = Directory.GetFiles(path, "*.jpg", SearchOption.AllDirectories);
            string[] png = Directory.GetFiles(path, "*.png", SearchOption.AllDirectories);
            string[] bmp = Directory.GetFiles(path, "*.bmp", SearchOption.AllDirectories);
            string[] gif = Directory.GetFiles(path, "*.gif", SearchOption.AllDirectories);
            int total = jpg.Length + png.Length + bmp.Length + gif.Length; 

            foreach (string s in jpg) images.Add(Image.FromFile(s));
            foreach (string s in png) images.Add(Image.FromFile(s));
            foreach (string s in bmp) images.Add(Image.FromFile(s));
            foreach (string s in gif) images.Add(Image.FromFile(s));

            for (int i = 0; i < total; i++)
            {
                dgv.Rows[i].Cells["societate"] =???
            }