工作人员做了一些研究,但还是不明白怎么做,我对C#知之甚少。
我有一个网格视图,我在其中添加了几个项目,现在我需要将这些项目移动到报告视图报告中。
我不知道该怎么做,最好将所有数据网格传递给法衣或拿起每个输出的项目ID,因为它们是不同的值(例如,是对应于各种输出的项目)并进行查询并将数据带到报告中......什么是最可行的?
工作人员做了一些研究,但还是不明白怎么做,我对C#知之甚少。
我有一个网格视图,我在其中添加了几个项目,现在我需要将这些项目移动到报告视图报告中。
我不知道该怎么做,最好将所有数据网格传递给法衣或拿起每个输出的项目ID,因为它们是不同的值(例如,是对应于各种输出的项目)并进行查询并将数据带到报告中......什么是最可行的?
假设您处于本地处理模式,因为没有提供更多信息。
ReportDataSource是您在本地模式下向 ReportViewer 控件提供数据的方式。 http://msdn.microsoft.com/en-us/library/ms251736(v=vs.90).aspx
现在转到 MSDN 上的 GridView 页面后,我发现GridView.DataSourceObject 实现了 IDataSource。(这是创建 ReportDataSource 的参数选项)。
这意味着您应该能够创建一个 ReportDataSource来提供给您的 ReportViewer 控件,只需像这样从您的 GridView创建 ReportDataSource (Rds),
ReportDataSource Rds = new ReportDataSource("DataSetName", GridView.DataSourceObject);
您可以使用下面的代码在带有 gridview 数据的报表查看器中查看数据。
int id =Convert.ToInt32(txtID.Text);
ReportViewer1.ProcessingMode = ProcessingMode.Local;
ReportViewer1.LocalReport.ReportPath = Server.MapPath("~/Report1.rdlc");
DataTable dt = GridView1.DataSourceObject;
if (dt.Rows.Count > 0)
{
ReportDataSource rds = new ReportDataSource("DatasetName", dt);
ReportViewer1.LocalReport.DataSources.Clear();
ReportViewer1.LocalReport.DataSources.Add(rds);
}