首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法在第三个XtraReport中合并两个XtraReport页面

无法在第三个XtraReport中合并两个XtraReport页面
EN

Stack Overflow用户
提问于 2016-02-17 06:14:03
回答 1查看 1.2K关注 0票数 3

我对每一份记录都有奇数偶数页,我必须准备报告。当我运行MVC应用程序时,我可以看到XtraReport查看器,但其中没有页面。

控制器/动作逻辑

代码语言:javascript
复制
var xtraReport1 = XtraReport.FromStream(GenerateStreamFromString(layout1), true);
var xtraReport2 = XtraReport.FromStream(GenerateStreamFromString(layout2), true);

var finalExtraReport = new XtraReport();

foreach(var row in dataTable.Rows)
{
    xtraReport1 = XtraReport.FromStream(GenerateStreamFromString(layout1), true);
    xtraReport1.DataSource = dataTable.Select("id = '"+ row[id] +"'")CopyToDataTable();
    xtraReport1.CreateDocument();
    finalExtraReport.Pages.AddRange(xtraReport1.Pages);

    xtraReport2 = XtraReport.FromStream(GenerateStreamFromString(layout2), true);   
    xtraReport2.DataSource = dataTable.Select("id = '"+ row[id] +"'")CopyToDataTable();
    xtraReport2.CreateDocument();
    finalExtraReport.Pages.AddRange(xtraReport2.Pages);
}

return View(finalExtraReport);

视图

代码语言:javascript
复制
@model XtraReport
@{
    ViewBag.Title = "Home Page";
}

@Html.DevExpress().WebDocumentViewer(settings =>
{
    settings.Name = "webDocumentViewer";
}).Bind(Model).GetHtml()
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-02-19 10:42:05

找到了解决办法。

此行为是由WebDocumentViewer扩展重新创建报表文档以预览它这一事实造成的。因此,动态添加到报表中的报表页将被清除。

当前,当使用HTML5文档查看器控件预览报表时,必须调用XtraReport.AfterPrint事件处理程序来合并报表页。因此,处理"r2“报表的AfterPrint事件,并使用该事件处理程序将"r1”报表的页面添加到"r2“报表中。

代码语言:javascript
复制
public ActionResult ShowReport()
{
     //...
     XtraReport mainReport = //get a report;
     mainReport.AfterPrint += Report_AfterPrint;
     //...
}
void Report_AfterPrint(object sender, EventArgs e) {
     //merge reports
    XtraReport sourceReport = sender as XtraReport;

    XtraReport additionalReport = new XtraReport1();
    additionalReport.CreateDocument();

    sourceReport.Pages.AddRange(additionalReport.Pages);
}

注意:从15.2.5版本开始,WebDocumentViewer支持在框内显示合并的报告.

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35449207

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档