DataGridView中显示图片

DataGridView中显示图片

本人菜鸟一枚,但是分享一下自己总结的在DataGridView中如何显示图片,希望能和大家一起交流学习:


首先

在DataGridView中添加一个DataGridViewImageColumn列 如图:

DataGridView中显示图片_第1张图片

然后显示图片

dataGridView1.Rows[0].Cells["img"].Value = Image.FromFile(@"F:\img\123.png");//通过路径得到一个Image对象

但是前提是datagridview中要绑定数据源,如果不绑定数据源是没有数据的。注意!

还有一种连接数据库显示图片的方法


public class SetImg
{
    public List<string> GetImgsrc()
            {
                List<string> listImgsrc = new List<string>();
                string sql = "select src from [T_Imgsrc]";
                DataTable dt = qliteHelper.ExecuteDataTable(sql);//执行查询语句,返回一个表。
                foreach (DataRow row in dt.Rows)
                {
                    listImgsrc .Add(row["src"].ToString());//将数据一条一条的加入的list中
                }
                return listImgsrc ;//返回这个集合
            }
}

    SetImg st = new SetImg();
private void Form1_Load(object sender, EventArgs e)
{
    dataGridView1.RowTemplate.Height = 100;//设置行高100
    dataGridView1.DataSource = st.GetImgsrc();//绑定数据源
    dataGridView1.Rows[0].Selected = false;//设置默认不选中            
}
//DataGridView中的单元格格式化事件
private void dataGridView1_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
{
    var list = st.GetImgsrc();
    dataGridView1.Rows[e.RowIndex].Cells["img"].Value = Image.FromFile(list[e.RowIndex]);//依次为DataGridView赋值
}

最后希望和大家一起交流学习。

你可能感兴趣的:(C#)