我是c#的新手,我试图创建一个报告.. 我翻译了我的代码形式vb,并按照完全相同的步骤制作报告,但我得到的索引超出范围错误'在C#中但它在VB中工作正常..
继承我的代码
private void frmInvoice_Load(object sender, EventArgs e)
{
this.reportViewer1.LocalReport.DataSources[0].Value = Globals.cart;
this.reportViewer1.SetDisplayMode(Microsoft.Reporting.WinForms.DisplayMode.PrintLayout);
this.reportViewer1.RefreshReport();
}
Globals.cart是一个数据表,我确保它在加载报表之前有行。
我从具有数据表的数据集中获取报告数据
这个练习工作在vb ..我真的很困惑为什么它不会工作..请赐教..即时通讯答案 0 :(得分:0)
看起来reportViewer1.LocalReport.DataSources[0]
不存在。
您可以使用reportViewer1.LocalReport.DataSources.Add(Globals.cart);
编辑:要以这种方式添加,Globals.cart
需要是一个数据表。
edit2:in clase不是数据源
ReportDataSource reportDataSource = new ReportDataSource();
reportDataSource.Name = "DataSet1";
reportDataSource.Value = Globals.cart;
reportViewer1.LocalReport.DataSources.Add(reportDataSource);