namespace PrintingWFP
{
public partial class Form1 : Form
{
Bitmap memoryimg;
PrintPreviewDialog printprvw = new PrintPreviewDialog();
PrintDocument printdoc = new PrintDocument();
Panel pannel;
public Form1()
{
InitializeComponent();
}
private void Print(Panel pn1)
{
PrinterSettings ps = new PrinterSettings();
pannel = pn1;
getprintarea(pn1);
printprvw.Document = printdoc;
printdoc.PrintPage += new PrintPageEventHandler(pntdoc_printpage);
printprvw.ShowDialog();
panel1.Size = new Size(395, 642);
panel1.Visible = true;
}
private void pntdoc_printpage(object sender, PrintPageEventArgs e)
{
Rectangle pagearea = e.PageBounds;
e.Graphics.DrawImage(memoryimg, 0, 0);
PrintPreviewDialog pre = new PrintPreviewDialog();
}
private void getprintarea(Panel pn1)
{
memoryimg = new Bitmap(pn1.Width, pn1.Height);
pn1.DrawToBitmap(memoryimg, new Rectangle(0, 0, pn1.Width, pn1.Height));
}
private void button1_Click(object sender, EventArgs e)
{
panel1.Visible = false;
panel1.Size = new Size(794, 1123);
Print(this.panel1);
}