XtraReport 打印控件 预览打印按钮控制


//Load private void FrmReport_DataSourceDemanded(object sender, EventArgs e) { try { #region 放到构造函数没效果 //this.ShowPrintStatusDialog = false; this.ShowPrintMarginsWarning = false; #endregion InitData(); _xtraReport = (XtraReport)sender; LoadData(); } catch (Exception ex) { WriteExceptionLog(ex); } }

 

调用

 

打印操作权限-是否允许多次打印
    private void FrmReport_BeforePrint(object sender, System.Drawing.Printing.PrintEventArgs e) { if (!IsPrint)//判读是否打印还是预览 { if (!IsMultiplePrintBill) { if (_CM_PrintNumber != null && _CM_PrintNumber.PrintNumber > 1) { XtraReport x = _xtraReport; setcomm(x); } } e.Cancel = false; } else { if (IsMultiplePrintBill)//是否允许多次打印 { //_xtraReport = (XtraReport)sender; //LoadData(); e.Cancel = false; } else { if (_CM_PrintNumber != null && _CM_PrintNumber.PrintNumber > 1) { XtraMessageBox.Show("您没有多次打印单据的权限!", "系统提示"); e.Cancel = true; } } } }

 

 

private void setcomm(XtraReport x) { DevExpress.XtraPrinting.PrintingSystemBase mPSB = x.PrintingSystem; mPSB.StartPrint += new PrintDocumentEventHandler(this.FrmPrint_StartPrint); //DevExpress.XtraPrinting.PrintingSystemCommand c = new PrintingSystemCommand(); //mPSB.SetCommandVisibility(new DevExpress.XtraPrinting.PrintingSystemCommand[] //{ // DevExpress.XtraPrinting.PrintingSystemCommand.Open , // DevExpress.XtraPrinting.PrintingSystemCommand.PageSetup , // DevExpress.XtraPrinting.PrintingSystemCommand.Print , // DevExpress.XtraPrinting.PrintingSystemCommand.PrintDirect , // DevExpress.XtraPrinting.PrintingSystemCommand.Save, // DevExpress.XtraPrinting.PrintingSystemCommand.ExportCsv, // }, DevExpress.XtraPrinting.CommandVisibility.None); } private void FrmPrint_StartPrint(object sender, PrintDocumentEventArgs e) { if (!IsMultiplePrintBill) { if (_CM_PrintNumber != null && _CM_PrintNumber.PrintNumber > 1) { e.PrintDocument.BeginPrint -= new System.Drawing.Printing.PrintEventHandler(this.FrmPrint_Print); e.PrintDocument.BeginPrint += new System.Drawing.Printing.PrintEventHandler(this.FrmPrint_Print); } } } private void FrmPrint_Print(object sender, PrintEventArgs e) { if (_CM_PrintNumber != null && _CM_PrintNumber.PrintNumber > 1) { XtraMessageBox.Show("您没有多次打印单据的权限!", "系统提示"); e.Cancel = true; return; } e.Cancel = false; }


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM