Veja
neste artigo como trabalhar com PrintPreviewDialog.
Crie um aplicativo com um nome qualquer, nele insira um button, altere a propriedade Text do button para "Visualiza Print".
Antes
do construtor do formulário declare a variável "Image shot;" :
Logo após o construtor, insira o seguinte código :
private void printDoc_PrintPage(object sender, PrintPageEventArgs e)
{
e.Graphics.DrawImage(shot, 0, 0, shot.Width, shot.Height);
e.HasMorePages = false;
}
private Image GetScreenShot()
{
Bitmap bmp = new Bitmap(this.Width, this.Height);
Graphics g = Graphics.FromImage(bmp);
g.CopyFromScreen(new Point(this.Left, this.Top), Point.Empty, this.Size);
return bmp;
}
Agora no Button1 de um duplo click nele e insira a seguinte linha de código abaixo:
PrintPreviewDialog previewDialog = new PrintPreviewDialog();
PrintDocument printDocument = new PrintDocument();
shot = GetScreenShot();
printDocument.DocumentName = this.Name;
printDocument.PrintPage += new PrintPageEventHandler(this.printDoc_PrintPage);
previewDialog.Document = printDocument;
previewDialog.ShowDialog();
O Projeto ira ficar da seguinte maneira:
Desde já agradeço a atenção de todos, e até a próxima.