Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How display images in datagridview? c#

I am developing an application in C # for desktop using Visual Studio Express 2010.

I have a table in MySQL called Products with 3 fields:

ID -> Product_Name -> product_image

The field product_Image stores the image path in my hard drive (not the image itself)

An example of a record would be:

0001 --- Mousepad XYZ ---- c:\images\mousepad.jpg

I wonder how fill a datagridview that shows the ID, Produt name, and - especially - the product image for each record in my SQL query.

All the examples I found were used manual data inserts, but I am looking for an example to fill the datagridview with data from a SQL query, not a manual insertion.

Edit:

Thank you for help, but could not directly apply the solutions.

I already have a datagridview on my form, I have no need to create in runtime.

I need something like that (I'll write a generic way)

returnMySQL = "select * from products";

while (returnMySQL)
{
    fill datagrid with ID, product name, product image
}
like image 710
Reboot Avatar asked May 28 '13 05:05

Reboot


2 Answers

Use following Code:

Bitmap img;

img = new Bitmap(@"c:\images\mousepad.jpg");

// Create the DGV with an Image column

DataGridView dgv = new DataGridView();

this.Controls.Add(dgv);

DataGridViewImageColumn imageCol = new DataGridViewImageColumn();

dgv.Columns.Add(imageCol);

// Add a row and set its value to the image

dgv.Rows.Add();

dgv.Rows[0].Cells[0].Value = img;

Referance LINK .

like image 132
Freelancer Avatar answered Sep 22 '22 05:09

Freelancer


You can add images with the following way:

//you need to perform some parsing to retrieve individual values of ID, Name and ImagePath
string path = @"c:\images\mousepad.jpg";
string ID = "0001";
string Product_Name = "Mousepad XYZ";
dataGridView1.Rows.Add(ID, Product_Name, Bitmap.FromFile(path));
like image 27
Shaharyar Avatar answered Sep 19 '22 05:09

Shaharyar