DevExpress GridControl 列中显示图片
一、GridControl 的Columns中添加列
1、列名:FieldName命名为img
2、类型:ColumnEdit属性中 选择PictureEdit类型(RepositoryItemPictureEdit)
二、GridControl绑定的数据,不管是DataTable、List或者其他源,添加一个列,列名为img。
以DataTable为例:
void bindGrid01() { DataTable dt = new DataTable(); dt.Columns.Add(new DataColumn("xm")); dt.Columns.Add(new DataColumn("ch")); dt.Columns.Add(new DataColumn("ccsj")); dt.Columns.Add(new DataColumn("dhhm")); dt.Columns.Add("img", System.Type.GetType("System.Byte[]")); // string img = "tel.png"; dt.Rows.Add(GetRow(dt, "张三", "车牌号1", "2016-04-19 15:28", "13488851091", img)); dt.Rows.Add(GetRow(dt, "李四", "车牌号2", "2016-04-19 15:31", "13488851092", img)); dt.Rows.Add(GetRow(dt, "王五", "车牌号3", "2016-04-19 15:57", "13488851094", img)); gridView1.RowHeight = 30; gridControl1.DataSource = dt; } //每行数据行 private DataRow GetRow(DataTable dt, string name, string veh, string time, string tel, string imagePath) { DataRow dr = dt.NewRow(); dr["xm"] = name; dr["ch"] = veh; dr["ccsj"] = time; dr["dhhm"] = tel; dr["img"] = getImageByte(imagePath); return dr; }
备注:几个img名称要一直
1、在gridControl1 中添加的列 img(FieldName属性)
2、添加显示图片的列,要更改类型(选中该列后,在ColumnEdit属性中 选择PictureEdit类型)
3、为dataTable添加的列 img
4、通过图片转Byte[]的方式赋值给图片列(因为在添加的PictureEdit类型中,没有image属性,没办法直接将image传递给它)