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传递给它)

 

posted @ 2016-04-21 01:02  bdf216  阅读(4470)  评论(0编辑  收藏  举报