我想知道为什么我的报告不会出现在报告查看器中? 我使用此代码从我的主窗体列表视图生成报告。
报告查看器中没有运行时错误。
public void PrintDVDList(frmMain frmMain)
{
try
{
var Report = new rptDVDList();
DataRow row = null;
DataSet DS = new DataSet();
DataTable DT = new DataTable();
DS.Tables.Add("tblDVDInventory");
var _with1 = DS.Tables[0].Columns;
_with1.Add("ItemCode");
_with1.Add("Title");
_with1.Add("Genre");
_with1.Add("Film");
_with1.Add("YearReleased");
_with1.Add("Classification");
_with1.Add("NumberOfDiscs");
foreach (ListViewItem LVI in frmMain.lvwInventory.Items)
{
row = DS.Tables[0].NewRow();
row[0] = LVI.Text.ToString();
row[1] = LVI.SubItems[1].Text.ToString();
row[2] = LVI.SubItems[2].Text.ToString();
row[3] = LVI.SubItems[3].Text.ToString();
row[4] = LVI.SubItems[4].Text.ToString();
row[5] = LVI.SubItems[5].Text.ToString();
row[6] = LVI.SubItems[6].Text.ToString();
DS.Tables[0].Rows.Add(row);
}
var frmReportDVDList = new frmReportDVDList();
Report.SetDataSource(DS.Tables[0]);
frmReportDVDList.crvDVDList.ReportSource = Report;
frmReportDVDList.crvDVDList.Refresh();
}
catch (Exception error)
{
MessageBox.Show(error.ToString());
}
}
答案 0 :(得分:0)
尝试此操作以查看..在designer.cs文件中,搜索“this.MasterReport”。你应该看到'this.MasterReport'= false;' 在此声明的几行中,您将看到以下代码行,类似于下面的代码:
this.StyleSheet.Add(new .StyleSheetRule("font-size font-weight:", "Heading3", "Normal"));
在此行下,添加浮动代码并将您的报告更改为报告名称:
this.ReportStart += new System.EventHandler(this.yourreport_ReportStart);
编译代码并运行它。
答案 1 :(得分:0)
1。 找出报表frmReportDVDList设计的表名或视图名称或xsd是什么。
2
在数据集中使用与名称完全相同的名称。例如,如果在上面的步骤中名称为“dvdtable”,则将此名称设置为数据集表。
喜欢
DS.Tables[0].Name="dvdtable";
现在它应该可以正常工作。