private void PrintDocument(IPrintingContext printContext) { List <PrintPage> pages = GetPages(printContext); if (pages.Count == 0) { UIApplication.MessageDialogs.Info("NoPages".Localize()); return; } PrintPages(pages, PageOrientation.Landscape, "Material"); }
private List <PrintPage> GetPages(IPrintingContext printContext) { int recordCount = printContext.DataSource.Count; int pageCount = recordCount / RecordsPerPage + ((recordCount % RecordsPerPage == 0) ? 0 : 1); List <PrintPage> pages = new List <PrintPage>(); for (int i = 0; i < pageCount; ++i) { pages.Add(new PrintPage(i + 1, pageCount, printContext)); } return(pages); }
public PrintPage(int pageNumber, int pageCount, IPrintingContext printingContext) { _pageNumber = pageNumber; _pageCount = pageCount; _printingContext = printingContext; }
public void Render(IPrintingContext context) { context.PrintPrintableDocument(this); }
public static void Print(IPrintingContext printContext) { Instance.PrintDocument(printContext); }