Exemplo n.º 1
0
        // The first thing to do before we try to print is build up the header and footer elements. We'll create default ones in the constructor: 
        public PrintEngine()
        {
            // create the header...
            Header = new PrintElement(null);
            Header.AddText("Report");
            Header.AddText("Page: [pagenum]");
            Header.AddHorizontalRule();
            Header.AddBlankLine();

            // create the footer...
            Footer = new PrintElement(null);
            Footer.AddBlankLine();
            Footer.AddHorizontalRule();
            Footer.AddText("Confidential");
        }
Exemplo n.º 2
0
        public void Print(PrintElement element)
        {
            // tell the engine to draw a header... 
            element.AddHeader("Customer");

            // now, draw the data... 
            element.AddData("Customer ID", Id.ToString());
            element.AddData("Name", FirstName + " " + LastName);
            element.AddData("Company", Company);
            element.AddData("E-mail", Email);
            element.AddData("Phone", Phone);

            // finally, add a blank line... 
            element.AddBlankLine(); 
            
        }
Exemplo n.º 3
0
        public void Print(PrintElement element)
        {
            // tell the engine to draw a header...
            element.AddHeader("Contents of List");

            // now, draw the data...
            element.AddData("Book Nbr", bookNumber);
            element.AddData("Title", title);
            element.AddData("ISBN", ISBN);
            element.AddData("Location", location);
            element.AddData("Price", price);
            element.AddData("Status", status);

            // finally, add a blank line...
            element.AddBlankLine();
        }
Exemplo n.º 4
0
        // The printing routines have a fairly curious way of working, which I mentioned right at the beginning involved firing events to signal when a page needs to be printed.
        // The first event that gets fired is BeginPrint, but as PrintEngine is inherited from PrintDocument the best way to get at this is to override OnBeginPrint. 
        // This is, I'm told, similar to the way that the printing routines in MFC worked. 
        
        // OnBeginPrint - called when printing starts
        protected override void OnBeginPrint(PrintEventArgs e)
        {
            // reset...
            _printElements = new ArrayList();
            _pageNum = 0;
            _printIndex = 0;

            // go through the objects in the list and create print elements for each one...
            foreach (IPrintable printObject in _printObjects)
            {
                // create an element...
                PrintElement element = new PrintElement(printObject);
                _printElements.Add(element);

                // tell it to print...
                printObject.Print(element);
               
            }
        }
Exemplo n.º 5
0
 public void Print(PrintElement element)
 {
     element.AddText(text);
 }