日期:2014-05-18  浏览次数:21008 次

水晶报表显示数据库中图片
vs2005,vs2005自带水晶报表(10.2),winform程序
有一张数据库表test,字段Img,数据类型image,保存bmp图片
水晶报表采用dataset文件形式填充,新建一个dataset文件,设置字段Img,数据类型System.byte
在数据报表中拖入dataset文件中字段Img,运行程序后,报表显示为空白,为什么不显示图片出来??
我在form中用picturebox控件是可以显示图片的,说明图片没有问题,为什么在水晶报表中无法显示图片?
是不是还要写什么代码??各位朋友请帮帮忙,谢谢!


------解决方案--------------------
参考

http://blog.csdn.net/happy09li/article/details/6931959

C# code
数据库 数据类型image 应该为二进制

  private DataSet CreateReportDataSet()
        {
            DataSet ds = new DataSet();
            DataTable deliveryorderTable = new DataTable("orderItem");
            deliveryorderTable.Columns.Add(new DataColumn("Image",System.Type.GetType("System.Byte[]"))));        
            deliveryorderTable.Columns.Add(new DataColumn("orderCode"));
            deliveryorderTable.Columns.Add(new DataColumn("receiveShipmentQty"));
            deliveryorderTable.Columns.Add(new DataColumn("reimburseMark"));
            ds.Tables.Add(deliveryorderTable);
            return ds;
        }

dr["image"] = Picture.ImageToBytes(Picture.GetPicBySize(Picture.ReadPicture(0, temp), 200, 300));