EPR类企业管理系统

在我们现有系统基础上或全新开发,提供定制服务
为您的企业高效快速实施ERP,WMS,MES,CRM管理系统
全面管控物料仓库、销售业务、采购业务、仓库业务
生产过程、质量检验、组织架构、业务报表


定制
QQ:460-3528

开发
QQ群:3360-90194

源码
微信:136-3650-3721

如何:自定义打印系统的导出选项

在Windows Forms XAF应用程序中,最终用户可以将View打印预览导出为各种格式。导出之前,将调用“导出选项”对话框。可以使用此对话框更改特定于格式的选项,例如HTML标题或XLS工作表名称。

ExportOptions1

提示

可在http://www.devexpress.com/example=E2108的DevExpress代码示例数据库中找到完整的示例项目。

注意

若要了解如何为报告指定导出选项,请参阅“如何:自定义报告导出选项”主题。

  • PrintingController,与所提供的系统模块,公开PrintingController.PrintingSettingsLoaded事件。您可以处理此事件以访问PrintingSystem对象并修改默认的导出选项。为此,实现以下View Controller

    using DevExpress.XtraPrinting;
    using DevExpress.ExpressApp.Win.SystemModule;
    // ...
    public class ConfigurePrintingSystemViewController : ViewController {
        private PrintingController printingService;
        protected override void OnActivated() {
            base.OnActivated();
            printingService = Frame.GetController<PrintingController>();
            if (printingService != null)
                printingService.PrintingSettingsLoaded  = printingService_PrintingSettingsLoaded;
        }
        private void printingService_PrintingSettingsLoaded(
            object sender, PrintableComponentLinkEventArgs e) {
            ConfigurePrintingSystem(e.PrintableComponentLink.PrintingSystem);
        }
        private void ConfigurePrintingSystem(PrintingSystemBase printingSystem) {
            SetHtmlOptions(printingSystem.ExportOptions.Html);
            SetPdfOptions(printingSystem.ExportOptions.Pdf);
            SetXlsOptions(printingSystem.ExportOptions.Xls);
        }
        private static void SetXlsOptions(XlsExportOptions xlsExportOptions) {
            // XLS-specific options:
            xlsExportOptions.SheetName = "CustomXlsSheetTitle";
            xlsExportOptions.ShowGridLines = true;
        }
        private static void SetPdfOptions(PdfExportOptions pdfExportOptions) {
            // PDF-specific options:
            pdfExportOptions.DocumentOptions.Title = "CustomPdfTitle";
            pdfExportOptions.ImageQuality = PdfJpegImageQuality.Medium;
        }
        private static void SetHtmlOptions(HtmlExportOptions htmlExportOptions) {
            // HTML-specific options:
            htmlExportOptions.Title = "CustomHtmlTitle";
            htmlExportOptions.ExportMode = HtmlExportMode.SingleFilePageByPage;
            htmlExportOptions.PageBorderColor = System.Drawing.Color.Gray;
            htmlExportOptions.EmbedImagesInHTML = true;
        }
        private static void SetGeneralOptions(PrintPreviewOptions printPreviewOptions) {
            // General options:
            printPreviewOptions.DefaultFileName = "CustomFileName";
        }
        protected override void OnDeactivated() {
            if (printingService != null)
                printingService.PrintingSettingsLoaded -= printingService_PrintingSettingsLoaded;
            base.OnDeactivated();
        }
    }
    
    注意

    ShowPreviewDialog方法是一种扩展方法中所实现的DevExpress.XtraPrinting.v 19.2的.dll组件。编译上面的代码时,需要引用此程序集。

    您可以在ConfigurePrintingSystemSetXlsOptionsSetPdfOptionsSetHtmlOptionsSetGeneralOptions方法中访问各种导出选项。以下类提供了可用的属性:

    注意

    您可以为其他导出格式实现其他方法,然后从ConfigurePrintingSystem方法中调用它们。

  • 运行Windows窗体应用程序。在任何视图中执行PrintPreview Action。在调用的“预览”对话框中,单击“文件” |“文件”。导出文档...,然后选择导出格式。您将看到默认的导出设置已更改(修改的设置在屏幕快照中突出显示)。

    ExportOptions2

    另存为对话框中 的默认文件名也更改为“ CustomFileName”

  • 如果需要禁用“导出选项”对话框并始终使用默认选项,则将以下代码添加到SetGeneralOptions方法中:

    private static void SetGeneralOptions(PrintPreviewOptions printPreviewOptions) {
        // ...
        printPreviewOptions.ShowOptionsBeforeExport = false;
    }
    
相关文章

转载保留此链接,注明出处