如何在Crystal Report查看器中添加数据库中的图像?

时间:2013-06-28 07:00:10

标签: c# crystal-reports

您好我已在我的数据库字段中保存了一个图像,并希望在我的水晶报表查看器中显示该图像,但无法弄清楚如何执行该图像?任何帮助或建议都会非常有用。

1 个答案:

答案 0 :(得分:-1)

好的我正在使用SQLite,重要的是要创建 1.)将使用保存数据的BLOB字段。

2.)使用以下代码选择文件。为此,需要调用Open对话框。

{ 

OpenFileDialog of1 = new OpenFileDialog();

of1.Filter = "JPEG Files (*.jpeg)|*.jpeg|PNG Files (*.png)|*.png|JPG Files (*.jpg)|*.jpg";

of1.ShowDialog();

tbImage.Text = of1.FileName;

}

注意:不要忘记将相关的数据库字段类型设置为System.byte [];

3.)现在将文件转换为字节流。     {

byte[] imageBt = null;

FileStream fstream = new FileStream(tbImage.Text,FileMode.Open,FileAccess.Read);

BinaryReader br = new BinaryReader(fstream);

imageBt = br.ReadBytes((int)fstream.Length);

}

4.。)将图像插入数据库

{
String query = "Insert into Employee Values (" + e1.EmpID + ",'" + e1.FirstName + "','" + e1.LastName + "','" + e1.EmailAddress + "', @IMG)";

myCommand = new SQLiteCommand(query, dbConn);

myCommand.Parameters.Add(new SQLiteParameter("@IMG", e1.Image));
}

首先需要ImageBox来检索图像

1。)使用以下代码获取BLOB数据字节并将图像放入图像框中     {

MemoryStream mstream = new MemoryStream((byte[])(reader["Image"]));

ImageBox.Image = System.Drawing.Image.FromStream(mstream);

}