Freigeben über


Drucken eines Diagramms

Sie können im Diagrammsteuerelement für Windows Forms das Diagrammbild drucken.Verwenden Sie hierzu die Printing-Eigenschaft des Diagrammsteuerelements.Dieses Objekt druckt alle Elemente des Diagrammsteuerelements in der aktuellen Datenansicht mit Ausnahme der Bildlaufleisten.

Sie können das Dialogfeld "Drucken" aufrufen oder das Diagramm im Hintergrund drucken.Im Printing-Objekt können Sie mit der PrintDocument-Eigenschaft Druckereigenschaften festlegen, z. B. Seitenränder.

Benutzerdefinierter Druck

Um das Diagrammbild in einem Dokument mit anderen Dokumentelementen zu drucken, rufen Sie die PrintPaint-Methode in einem PrintPageEventHandler auf.Sie müssen die Graphics-Eigenschaft vom PrintPageEventArgs-Objekt, zusammen mit einem Rectangle-Objekt, das die Position des Diagrammbilds im Dokument definiert, an die PrintPaint-Methode übergeben.

Im folgenden Code wird das Drucken eines Dokuments mit einer Textzeile gefolgt von dem Diagrammbild und einer weiteren Textzeile veranschaulicht.

' Create new PrintDocument 
Dim pd As New System.Drawing.Printing.PrintDocument() 
' Add the event handler, and then print 
AddHandler pd.PrintPage, AddressOf pd_PrintPage 
' Print the document 
pd.Print() 
... 
Private Sub pd_PrintPage(ByVal sender As Object, ByVal ev As PrintPageEventArgs) 
   ' Create and initialize print font 
   Dim printFont As New System.Drawing.Font("Arial", 10) 
   ' Create Rectangle structure, used to set the position of the chart 
   Dim myRec As New System.Drawing.Rectangle(10, 30, 150, 150) 
   ' Draw a line of text, followed by the chart, and then another line of text 
   ev.Graphics.DrawString("Line before chart", printFont, Brushes.Black, 10, 10) 
   chart1.Printing.PrintPaint (ev.Graphics, myRec) 
   ev.Graphics.DrawString("Line after chart", printFont, Brushes.Black, 10, 200) 
End Sub
// Create new PrintDocument 
System.Drawing.Printing.PrintDocument pd = new System.Drawing.Printing.PrintDocument(); 
// Add a PrintPageEventHandler for the document 
pd.PrintPage += new PrintPageEventHandler(pd_PrintPage); 
// Print the document 
pd.Print(); 
...
private void pd_PrintPage(object sender, PrintPageEventArgs ev)
{
   // Create and initialize print font 
   System.Drawing.Font printFont = new System.Drawing.Font("Arial", 10); 
   // Create Rectangle structure, used to set the position of the chart Rectangle 
   myRec = new System.Drawing.Rectangle(10, 30, 150, 150); 
   // Draw a line of text, followed by the chart, and then another line of text 
   ev.Graphics.DrawString("Line before chart", printFont, Brushes.Black, 10, 10); 
   chart1.Printing.PrintPaint (ev.Graphics, myRec); 
   ev.Graphics.DrawString("Line after chart", printFont, Brushes.Black, 10, 200); 
}

Siehe auch

Weitere Ressourcen

Verwenden von Diagrammsteuerelementen