0

我用数据行类初始化数据表。有一个图像字段。在我初始化图像后,RDLC 报告不显示图像,但显示其他列。我的 RDLC 报告包含一个图片框控件。我设置-

Image Source=Database
MIMM Type=Image/Bitmap
Value==Fields!Images.Value 

这是我的代码片段..

DataTable dt = new DataTable();

dt.Columns.Add("ImageId");
dt.Columns.Add("ImageName");
dt.Columns.Add("Images");
dt.Columns.Add("Barcode");

        DataTable mydata = GetDataSet();
        DataRow drow = dt.NewRow();

        drow["ImageId"] = mydata.Rows[0][0];
        drow["ImageName"] = mydata.Rows[0][1];
        drow["Images"] = mydata.Rows[0][2]; //This is image row
        drow["Barcode"] = mydata.Rows[0][3];
        dt.Rows.Add(drow);

        ReportDataSource rds = new ReportDataSource("DataSet1", dt);
        ReportViewer1.LocalReport.DataSources.Clear();
        ReportViewer1.LocalReport.DataSources.Add(rds);
        ReportViewer1.LocalReport.Refresh();

这里是报告查看器代码:

<rsweb:ReportViewer ID="ReportViewer1" runat="server" Font-Names="Verdana" 
    Font-Size="8pt" InteractiveDeviceInfos="(Collection)" 
    WaitMessageFont-Names="Verdana" WaitMessageFont-Size="14pt">
 <LocalReport ReportPath="Reports\Report1.rdlc">
    </LocalReport>
</rsweb:ReportViewer>

我已经更改了我的数据集图像数据类型 String.Byte[]。但没有运气。如果我在没有任何数据行的情况下设置我的数据表,那么图像会清楚地显示。我不知道为什么?我用谷歌搜索了它,但找不到任何完美的解决方案。请帮助我。(对不起我的英语不好。)

4

1 回答 1

0

您需要使用指定列“图像”的类型

DataColumn column = new DataColumn("Images");
column.DataType = System.Type.GetType("System.Byte[]"); //OR the type you want

之后将此列添加到您的表中

于 2013-06-06T06:13:08.567 回答