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