How to: Access the ASPxDocumentViewer and ASPxWebDocumentViewer Controls 如何:访问 ASPx 文档查看器和 ASPxWeb 文档查看器控件
This example demonstrates how to access the ASPxDocumentViewer and ASPxWebDocumentViewer controls used to display reports in ASP.NET XAF applications.
此示例演示如何访问用于在ASP.NET XAF 应用程序中显示报表的 ASPx 文档查看器和 ASPxWeb 文档查看器控件。
In this topic, it is assumed that you have an XAF application that uses the Reports V2 Module, and you have created one or more reports (see Reports V2 Module Overview).
在本主题中,假定您有一个使用报表 V2 模块的 XAF 应用程序,并且您创建了一个或多个报表(请参阅报表 V2 模块概述)。
When a user previews a report in an ASP.NET XAF application, a Detail View is displayed in a popup or main window (depending on the ReportsAspNetModuleV2.DesignAndPreviewDisplayMode value). This Detail View contains a single View Item which creates a web control used to display a report. The particular View Item and control types depend on the ReportsAspNetModuleV2.ReportViewerType property value (HTML5 or ASP).
当用户在ASP.NET XAF 应用程序中预览报表时,详细信息视图将显示在弹出窗口或主窗口中(具体取决于"报告AspNetModuleV2.DesignandPreviewDisplayMode"值)。此详细信息视图包含单个视图项,该视图项创建用于显示报表的 Web 控件。特定的视图项和控件类型取决于报告AspNetModuleV2.报表查看器类型属性值(HTML5 或 ASP)。
ReportViewerType Value | View Item Type | Control Type |
---|---|---|
HTML5 | ReportWebViewerDetailItem | ASPxWebDocumentViewer |
ASP | ReportViewerDetailItem | ASPxDocumentViewer |
To access this View Item, implement a Controller that targets the ReportViewer_DetailView_V2 Detail View (this Detail View identifier is specified via the ReportsAspNetModuleV2.ReportViewDetailViewWebName constant). Pass the View Item type as the generic parameter of the CompositeView.GetItems<T> method. The first element of the returned list will be the required View Item, because there is a single report viewer item in the View. Then, you can handle the View Item's ViewItem.ControlCreated event and use the ReportViewer property to access the ASPxDocumentViewer or ASPxWebDocumentViewer control.
要访问此视图项,实现一个控制器,该控制器面向ReportViewer_DetailView_V2详细信息视图(此详细信息视图标识符通过报告AspNetModuleV2.报告视图详细信息视图WebName常量指定)。将视图项类型作为复合视图的泛型参数。getItems<T>方法。返回列表的第一个元素将是所需的视图项,因为视图中有一个报表查看器项。然后,您可以处理 ViewItem.Control创建事件,并使用报表查看器属性访问 ASPx 文档查看器或 ASPxWeb 文档查看器控件。
Example for an ASPxWebDocumentViewer (ReportViewerType is HTML5)
ASPxWeb文档查看器的示例(报表查看器类型是 HTML5)
using DevExpress.ExpressApp; using DevExpress.ExpressApp.ReportsV2.Web; // ... public class CustomizeReportViewerController : ViewController<DetailView> { public CustomizeReportViewerController() { TargetViewId = ReportsAspNetModuleV2.ReportViewDetailViewWebName; } protected override void OnActivated() { base.OnActivated(); ReportWebViewerDetailItem reportViewItem = ((DetailView)View).GetItems<ReportWebViewerDetailItem>()[0] as ReportWebViewerDetailItem; reportViewItem.ControlCreated += delegate(object sender, EventArgs e) { // Access client-side events of the ASPxWebDocumentViewer control reportViewItem.ReportViewer.ClientSideEvents.Init = "function(s, e) { s.previewModel.reportPreview.zoom(0.7); }"; }; } }
Example for an ASPxDocumentViewer (ReportViewerType is ASP)
ASPx 文档查看器的示例(报表查看器类型为 ASP)
using DevExpress.ExpressApp; using DevExpress.ExpressApp.ReportsV2.Web; // ... public class CustomizeReportViewerController : ViewController<DetailView> { public CustomizeReportViewerController() { TargetViewId = ReportsAspNetModuleV2.ReportViewDetailViewWebName; } protected override void OnActivated() { base.OnActivated(); ReportViewerDetailItem reportViewItem = ((DetailView)View).GetItems<ReportViewerDetailItem>()[0] as ReportViewerDetailItem; reportViewItem.ControlCreated += delegate(object sender, EventArgs e) { // Access settings of the ASPxDocumentViewer control reportViewItem.ReportViewer.SettingsReportViewer.PageByPage = false; }; } }
Important 重要
A reference to the DevExpress.XtraReports.v19.2.Web.dll assembly is required to compile these examples.
需要引用 DevExpress.XtraReports.v19.2.Web.dll 程序集来编译这些示例。
XAF开发成品案例参考
如果您觉得阅读本文对您有帮助,请点一下“推荐”按钮,您的“推荐”将是我最大的写作动力!欢迎各位转载,但是未经作者本人同意,转载文章之后必须在文章页面明显位置给出作者和原文连接,否则保留追究法律责任的权利。
作者博客: http://www.cnblogs.com/foreachlife
欢迎加入CIIP框架\XAF技术应用交流群: 336090194 群文件中有更多相关工具及文档资料
转载请注明出处。多谢!
欢迎加我微信: admiralcn 或扫码: