Ejemplo n.º 1
0
        /// <summary>
        /// 打印富文本内容
        /// </summary>
        /// <param name="printDocument">打印文档</param>
        /// <param name="preview">预览对象</param>
        public void PrintRTF(PrintDocument printDocument, bool preview)
        {
            try
            {
                printDocument.BeginPrint += new System.Drawing.Printing.PrintEventHandler(this.printDocument_BeginPrint);
                printDocument.EndPrint   += new System.Drawing.Printing.PrintEventHandler(this.printDocument_EndPrint);
                printDocument.PrintPage  += new System.Drawing.Printing.PrintPageEventHandler(this.printDocument_PrintPage);

                CoolPrintPreviewDialog dlg = new CoolPrintPreviewDialog();
                dlg.Document = printDocument;
                if (preview)
                {
                    if (dlg.ShowDialog() == DialogResult.OK)
                    {
                        printDocument.Print();
                    }
                }
                else
                {
                    printDocument.Print();
                }
            }
            catch (Exception ex)
            {
                LogHelper.WriteLog(LogLevel.LOG_LEVEL_CRIT, ex, typeof(ExRichTextBoxPrintHelper));
                MessageDxUtil.ShowError(ex.Message);
                return;
            }
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Use a .NET PrintPreview Dialog to print (or not print) this (possibly multi-page) HTML document.
        /// </summary>
        /// <param name="HtmlPages"></param>
        public static void PreviewOrPrint(String HtmlPages)
        {
            System.Drawing.Printing.PrintDocument printDocument = new System.Drawing.Printing.PrintDocument();
            bool printerInstalled = printDocument.PrinterSettings.IsValid;

            if (!printerInstalled)
            {
                MessageBox.Show(Catalog.GetString("There is no printer, so printing is not possible"));
                return;
            }

            TGfxPrinter  GfxPrinter  = new TGfxPrinter(printDocument, TGfxPrinter.ePrinterBehaviour.eFormLetter);
            TPrinterHtml htmlPrinter = new TPrinterHtml(HtmlPages,
                                                        TAppSettingsManager.GetValue("Formletters.Path"),
                                                        GfxPrinter);

            GfxPrinter.Init(eOrientation.ePortrait, htmlPrinter, eMarginType.ePrintableArea);

            CoolPrintPreviewDialog PrintDlg = new CoolPrintPreviewDialog();

            PrintDlg.Document   = GfxPrinter.Document;
            PrintDlg.ClientSize = new System.Drawing.Size(500, 720);
            try
            {
                PrintDlg.ShowDialog();
            }
            catch (Exception)  // if the user presses Cancel, an exception may be raised!
            {
            }
        }
Ejemplo n.º 3
0
 private void button1_Click(object sender, EventArgs e)
 {
     c.setPrint("Sales_Voucher", this.where, 1);
     parent.load_color();
     using (var dlg = new CoolPrintPreviewDialog())
     {
         dlg.Document    = this.printDocument1;
         dlg.WindowState = FormWindowState.Maximized;
         dlg.ShowDialog(this);
     }
     //printPreviewDialog1.ShowDialog();
 }
Ejemplo n.º 4
0
        private void printButton_Click(object sender, EventArgs e)
        {
            if (dataGridView5.RowCount == 0)
            {
                c.ErrorBox("Please Select Cartons to Print", "Error");
                return;
            }
            this.cartons_to_print.Clear();
            this.cartons_to_print_fiscal_year.Clear();
            int    rows = dataGridView5.Rows.Count;
            string sql  = "begin transaction; begin try;\n";

            for (int i = 0; i < dataGridView5.RowCount; i++)
            {
                int    carton      = int.Parse(dataGridView5.Rows[i].Cells[dataGridView5.Columns["Carton No."].Index].Value.ToString());
                string fiscal_year = dataGridView5.Rows[i].Cells[dataGridView5.Columns["Financial Year"].Index].Value.ToString();
                this.cartons_to_print.Add(carton);
                this.cartons_to_print_fiscal_year.Add(fiscal_year);
                sql += "UPDATE Carton_Produced SET Printed=1 WHERE Carton_No = '" + carton + "' AND Fiscal_Year = '" + fiscal_year + "';\n";
            }
            sql += "commit transaction; end try BEGIN CATCH rollback transaction; ";
            sql += "DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); ";
            sql += "RAISERROR (@ErrorMessage, @ErrorSeverity, @ErrorState); END CATCH; ";
            DataTable d = c.runQuery(sql); //set print

            //Load firmDetails in dictionary
            int print_type_id = int.Parse(firmDetailsCB.SelectedItem.ToString().Split(':')[1]);

            for (int i = 0; i < dt_printTypes.Rows.Count; i++)
            {
                if (dt_printTypes.Rows[i]["Print_Type_ID"].ToString() == print_type_id.ToString())
                {
                    for (int j = 0; j < dt_printTypes.Columns.Count - 1; j++)
                    {
                        firmDetails[dt_printTypes.Columns[j].ColumnName] = dt_printTypes.Rows[i][j].ToString();
                    }
                    break;
                }
            }

            this.slip_count = cartons_to_print.Count;
            using (var dlg = new CoolPrintPreviewDialog())
            {
                dlg.Document    = this.printDocument1;
                dlg.WindowState = FormWindowState.Maximized;
                dlg.ShowDialog(this);
            }
            //printPreviewDialog1.ShowDialog();
        }
Ejemplo n.º 5
0
        public static void Print_GridView(GridView dgv1, string title)
        {
            CoolPrintPreviewDialog ppvw;

            try
            {
                // Getting GridView object to print
                dgv        = dgv1;
                PrintTitle = title;

                // Getting all Coulmns Names in the GridView
                AvailableColumns.Clear();
                foreach (GridColumn c in dgv.Columns)
                {
                    if (!c.Visible)
                    {
                        continue;
                    }
                    AvailableColumns.Add(c.Caption);
                }

                // Showing the PrintOption Form
                PrintOptions dlg = new PrintOptions(AvailableColumns);

                //加载注册表中的内容
                string itemNameInRegister = dgv.GetType().GUID.ToString();
                string checkItems         = RegistryHelper.GetValue(itemNameInRegister);
                if (!string.IsNullOrEmpty(checkItems))
                {
                    string[] items = checkItems.Split(',');
                    dlg.SetCheckedItems(items);
                }
                dlg.PrintTitle = PrintTitle;//先赋值给对话框

                if (dlg.ShowDialog() != DialogResult.OK)
                {
                    return;
                }

                //保存选项内容
                string        selectedString = "";
                List <string> selectedItems  = dlg.GetCheckItems();
                foreach (string item in selectedItems)
                {
                    selectedString += string.Format("{0},", item);
                }
                selectedString = selectedString.Trim(',');
                RegistryHelper.SaveValue(itemNameInRegister, selectedString);

                PrintTitle      = dlg.PrintTitle;
                PrintAllRows    = dlg.PrintAllRows;
                FitToPageWidth  = dlg.FitToPageWidth;
                SelectedColumns = dlg.GetSelectedColumns();

                RowsPerPage = 0;

                ppvw          = new CoolPrintPreviewDialog();
                ppvw.Document = printDoc;

                // Showing the Print Preview Page
                printDoc.BeginPrint += new System.Drawing.Printing.PrintEventHandler(PrintDoc_BeginPrint);
                printDoc.PrintPage  += new System.Drawing.Printing.PrintPageEventHandler(PrintDoc_PrintPage);
                if (ppvw.ShowDialog() != DialogResult.OK)
                {
                    printDoc.BeginPrint -= new System.Drawing.Printing.PrintEventHandler(PrintDoc_BeginPrint);
                    printDoc.PrintPage  -= new System.Drawing.Printing.PrintPageEventHandler(PrintDoc_PrintPage);
                    return;
                }

                // Printing the Documnet
                printDoc.Print();
                printDoc.BeginPrint -= new System.Drawing.Printing.PrintEventHandler(PrintDoc_BeginPrint);
                printDoc.PrintPage  -= new System.Drawing.Printing.PrintPageEventHandler(PrintDoc_PrintPage);
            }
            catch (Exception ex)
            {
                LogHelper.WriteLog(LogLevel.LOG_LEVEL_CRIT, ex, typeof(PrintDGV));
                MessageDxUtil.ShowError(ex.Message);
            }
            finally
            {
            }
        }