0

我使用 vs 2010 和 telerik 报告 2013 Q1

使用下一个代码将数据表绑定到报告。

Reports.Report1 report = new Reports.Report1();

Telerik.Reporting.ObjectDataSource objectDataSource = new Telerik.Reporting.ObjectDataSource();
objectDataSource.DataSource = CreateData().Tables[0];
report.DataSource = objectDataSource;          

Telerik.Reporting.InstanceReportSource reportSource = new Telerik.Reporting.InstanceReportSource();
reportSource.ReportDocument = report;
TelRptViewer.ReportSource = reportSource;

我的报告包含一个包含 3 列的简单表格数据项。我已经在帮助中阅读了这个主题。 在设计时处理数据 - 数据源仅在运行时可用

“当您在设计时无法获取报表的数据源或希望避免在设计时将真实数据加载到 Visual Studio 中时,这种方法很有用。在这种情况下,您必须模拟您的数据以使报表设计器能够显示任何数据schema。这将使您能够调整报表的布局并将报表项绑定到可用的数据字段,而实际数据将仅在运行时在 NeedDataSource 事件或实际应用程序中加载。"

在简单的reportviewer 中有一个xsd 可以证明报告的数据模式。在这个查看器中,如何制作这个数据模式或类似的?或者还有另一种方法可以做到这一点?

谢谢。

4

4 回答 4

0
private void Report1_NeedDataSource(object sender, EventArgs e)
{
    Telerik.Reporting.Processing.Report rpt = (Telerik.Reporting.Processing.Report)sender;
    this.Report1DS.Parameters[0].Value = your value to be passed to data source..;
    // Similarly you can add more values of parameters.
    rpt.DataSource = Report1DS;
}
于 2014-02-10T12:13:39.180 回答
0

您可以在设计时将 Telerik Reports 绑定到 objectdatasource,并使用 Visual Designer 将字段直接拖到 REport 要使用 Visual Studio 或新的 Desginer 创建和运行报表,同时将其绑定到 objectdatasource:您所要做的就是对连接进行硬编码字符串到你的数据方法的类中。并在该方法内部使用连接字符串。查看我的博客: http: //flying2mind.blogspot.com/2013/10/creatingrunning-telerik-reports-in.html

http://flying2mind.blogspot.com/2013/07/telerik-report-doesnt-see-fields-of.html

于 2013-10-07T14:39:35.760 回答
0

你从来没有说过你是否在你的 Report1 类中添加了报表项(例如文本框)。这些文本框需要具有绑定表达式作为值,即 = Fields.MyDataColumn1。

只有这样,报告才会真正显示数据。您还可以添加对 TelRptViewer.RefreshReport() 的调用;这是某些查看器所必需的(例如 Windows 窗体)

祝你好运!

于 2013-05-28T14:24:49.487 回答
0

基本上,您可以在报告的 NeedDataSource 事件中添加数据源代码并设置数据源。当报表没有数据源时使用 NeedDataSource 事件。

于 2014-02-07T12:27:53.960 回答