Insert picture into report by convert picture to byte array and add to report.
1. Add picture column in ReportDataset.xsd and set data type to System.Byte() then compile project.
2. Open CustomerReport.rpt , right click Database Fields and select Verify Database menu. Insert Picture column into report.
3. At CreateDataSet function insert this code for add new picture data column.
dt.Columns.Add("Picture", Type.GetType("System.Byte[]"))
4. Create new function.
Private Function CreatePictureArray(ByVal bImagePath As String) As Byte()
Dim imgLogo As System.Drawing.Image = System.Drawing.Image.FromFile(bImagePath)
Dim msLogo As New IO.MemoryStream() imgLogo.Save(msLogo,
System.Drawing.Imaging.ImageFormat.Bmp)
Return msLogo.ToArray()
End Function
5. Convert image to byte array and bind to datarow.
' Create new row
Dim dr As DataRow = ds.Tables(0).NewRow
dr("Title") = "Mr"
dr("FirstName") = "Tom"
dr("LastName") = "Brown"
dr("Address") = "Tom Address"
dr("Picture") = CreatePictureArray("c:\person.jpg")
6. Show Report
ไม่มีความคิดเห็น:
แสดงความคิดเห็น