Exemple #1
0
        protected virtual void PrintHandler(Object sender, PrintPageEventArgs ev)
        {
            var layout = PrintingLayoutFactory.GetLayout(Document, PrintingLabels.ElementAt(Index), Width, Height);

            layout.Print(ev);

            ++Index;
            ++Count;
            ev.HasMorePages = Index < PrintingLabels.Count() && Count < MaxPagesPerDocument;
        }
Exemple #2
0
        protected virtual void EndPrintHandler(Object sender, PrintEventArgs ev)
        {
            if (Index < PrintingLabels.Count() && Count >= MaxPagesPerDocument)
            {
                Count = 0;

                var prevDocument = Document;

                Document            = new PrintDocument();
                Document.PrintPage += new PrintPageEventHandler(PrintHandler);
                Document.EndPrint  += new PrintEventHandler(EndPrintHandler);

                Document.DefaultPageSettings = prevDocument.DefaultPageSettings;
                Document.PrinterSettings     = prevDocument.PrinterSettings;

                Document.Print();

                prevDocument.Dispose();
            }
        }