DataGridView中显示图片
本人菜鸟一枚,但是分享一下自己总结的在DataGridView中如何显示图片,希望能和大家一起交流学习:
首先
在DataGridView中添加一个DataGridViewImageColumn列 如图:
然后显示图片
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赋值
}