printing content of a picturebox

Saeid Yazdani picture Saeid Yazdani · May 7, 2011 · Viewed 11.9k times · Source

HI all,

I have a picture box in my C# WinForms application which is sized 800x800. I want to print the content of this picture box using the following code but it does not do anything at all (just shows the print dialog and when I click on PRINT in the dialog it doe nothing too. What's wrong?

    private void menuFilePrint_Click(object sender, EventArgs e)
    {
        printDocument.OriginAtMargins = true;
        printDocument.DocumentName = "TEST IMAGE PRINTING";

        printDialog.Document = printDocument;
        printDialog.ShowDialog();
    }

    private void printDocument_PrintPage(object sender, PrintPageEventArgs e)
    {
        e.Graphics.DrawImage(curveBox.Image, 0, 0);
    }

Answer

manji picture manji · May 7, 2011

You didn't instruct the printDocument to print:

if(printDialog.ShowDialog() == DialogResult.OK)
    printDocument.Print();

the printDialog is used to set printing settings.