Winform中获取钻取子报表信息

发布时间:2016/12/29 00:12 发布者:lenka.guo

返回博客中心

 

很多项目中需要根据报表来切换UI,但是当钻取报表发生后,有可能无法获取子报表的名称等信息。本文就来学习当发生钻取或导航等行为时,如何获取控制子报表信息

1. 新建Winform 程序

 

2. 添加报表及钻取子报表

 

3. 新建 Form, 添加Viewer控件

 

4. 选中Viewer,在事件中实现Action 方法,实例化DrillthroughAction类

当钻取发生时,会自动执行Viewer Action方法。

 private void viewer1_Action(object sender, GrapeCity.ActiveReports.Viewer.Win.Viewer.ActionEventArgs e)
        {

            DrillthroughAction act = e.Action as DrillthroughAction;
            var rpt = act.TargetReport;
            var docProp = rpt.GetType().GetProperty("Document", BindingFlags.Instance | BindingFlags.NonPublic);
            var doc = (PageDocument)docProp.GetValue(rpt,null);
            this.textBox1.Text = doc.PageReport.Report.Name;

        }

 

下载附件:


了解ActiveReports产品更多特性:

/developer/activereports

下载产品体验产品功能:

/download/?pid=16


关于葡萄城

赋能开发者!葡萄城是专业的集开发工具、商业智能解决方案、低代码开发平台于一身的软件和服务提供商,为超过 75% 的全球财富 500 强企业提供服务。葡萄城专注控件软件领域30年,希望通过模块化的开发控件、灵活的低代码应用开发平台等一系列开发工具、解决方案和服务,帮助开发者快速响应复杂多变的业务需求,最大程度地发挥开发者的才智和潜能,让开发者的 IT 人生更从容更美好。

了解详情,请访问葡萄城官网