我写了段简单的代码你看一下。
FileStream fs = new FileStream("aa.bmp", FileMode.Open, FileAccess.Read );
byte[] imageData;
imageData = new Byte[fs.Length];
fs.Read(imageData, 0, (int)fs.Length );
fs.Close();
File.Delete("aa.bmp");
DataRow NewRow=this.dt.NewRow();
NewRow["Image"]=imageData;
dt.Rows.Add(NewRow);// b.Dispose();
// gc.Dispose();
CrystalDecisions.CrystalReports.Engine.ReportDocument rd=new
CrystalDecisions.CrystalReports.Engine.ReportDocument();
rd.Load("..\\..\\CrystalReport1.rpt");
rd.SetDataSource(this.dt);
this.crystalReportViewer1.ReportSource=rd;
FileStream fs = new FileStream("aa.bmp", FileMode.Open, FileAccess.Read );
byte[] imageData;
imageData = new Byte[fs.Length];
fs.Read(imageData, 0, (int)fs.Length );
fs.Close();
File.Delete("aa.bmp");
DataRow NewRow=this.dt.NewRow();
NewRow["Image"]=imageData;
dt.Rows.Add(NewRow);// b.Dispose();
// gc.Dispose();
CrystalDecisions.CrystalReports.Engine.ReportDocument rd=new
CrystalDecisions.CrystalReports.Engine.ReportDocument();
rd.Load("..\\..\\CrystalReport1.rpt");
rd.SetDataSource(this.dt);
this.crystalReportViewer1.ReportSource=rd;
2,那CrystalReport设计器要怎么样才能插入byte[]类型的数据为图片字段呢?
谢谢
我们可以在设定这张表时指定 Image 字段的类型为 imageData的类型。
dt.Columns.Add(new DataColumn("Image",imageData.GetType()));问题2
插入图片字段的方法与插入其它类型字段的方法相同。你在做数据集文件时指定该表中的Image类型为base64Binary 就可以了。
还有什么不明白再问。
问题2:在crystalReport设计器插入图片时,将base64Binary类型的字段拖入
报表中,好像显示的并不是图片,怎么回事?
需要做什么设置吗?
http://support.microsoft.com/default.aspx?scid=kb;EN-US;309158