PRINT SOMETHING THAT IS NOT SHOWN ON THE SCREEN USING WPF.

Simons Hood

Total Post:70

Points:494
Posted by  Simons Hood
WPF 
WPF
 1183  View(s)
Ratings:
Rate this:
Hi Developers!

How does word print all the content of the page? what is the mechanism? I just need a head start , how to print something that is not shown on the screen?

thanks in advance

  1. shreesh chandra shukla

    Post:105

    Points:735
    Re: Print something that is not shown on the screen using wpf.

    Hi!

    Im not sure if this is what you want but, 

    What you have to do is create a dummy form that's the size of the control you want to print then add the control to the dummy form and show the form and print the control on the dummy. 

    Here is how i did it: 

    private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)

    {

        //Create bitmap

        Bitmap image = new Bitmap(dataGridView1.Width, dataGridView1.Height);

        //Create form

        Form f = new Form();

        //add datagridview to the form

        f.Controls.Add(dataGridView1);

        //set the size of the form to the size of the datagridview

        f.Size = dataGridView1.Size;

        //draw the datagridview to the bitmap

        dataGridView1.DrawToBitmap(image, new Rectangle(0, 0, dataGridView1.Width, dataGridView1.Height));

        //dispose the form

        f.Dispose();

        //print

        e.Graphics.DrawImage(image, 0, 0);

    }

    This will print dataGridView1, even if its not seen on the form.

  1. Ely Sanders

    Post:3

    Points:21
    Re: Print something that is not shown on the screen using wpf.

    Hi, if you were referring to MS Word, it uses a C# word interop to manipulate with a content and to print it.
    For your WPF application you need to use System.Printing namespace and its classes like PrintQueue and PrintTicket. You can read about it on MSDN Printing Overview.

Answer

NEWSLETTER

Enter your email address here always to be updated. We promise not to spam!