Wie kann ich Daten aus einem DataGridView in C # drucken?

8

Ich entwickle ein Programm, und ich muss die Rechnungsdaten drucken, die in einem DataGridView-Steuerelement angezeigt werden.
Ich möchte den Code wissen, wie man die Daten in der DataGridView druckt.

Ich verwende Visual Studio 2008 und C # 3.5

    
Omneya 25.12.2010, 11:28
quelle

1 Antwort

12

Es ist keine Druckunterstützung in DataGridView integriert, daher müssen Sie dies selbst implementieren. Es gibt ein paar mögliche Lösungen:

  1. WinForms bietet ein Standarddrucksystem, mit dem Sie den Inhalt Ihres DataGridView -Steuerelements ausdrucken können. Sie sollten die PrintDocument -Klasse verwenden, also die entsprechende Dokumentation ist ein großartiger Ort, um mit dem Lesen zu beginnen. Der Vorteil dieser Methode ist, dass Sie die vollständige Kontrolle über das Format und Layout des gedruckten Dokuments haben.

  2. Sie könnten die Daten von Ihrem DataGridView nach Microsoft Excel exportieren und dann von dort aus drucken. Excel hat viel robuster, integrierte Druckunterstützung.

  3. Wenn Sie nicht daran interessiert sind, Ihre eigene Lösung zu erstellen, können Sie CodeProject für einige bereits entwickelte Lösungen durchsuchen. Zum Beispiel:

    Auch wenn Sie keine Drop-In-Lösung finden, die genau Ihren Anforderungen entspricht, können Sie sich anhand des veröffentlichten Codes ein gutes Bild davon machen, wie Sie diese Funktionalität selbst erstellen können.

  4. Wenn Sie sich für eine wirklich hacky Lösung entscheiden (und Sie haben keine Lust oder Notwendigkeit, das Layout oder Design der gedruckten Ausgabe anzupassen), könnten Sie die DrawToBitmap Methode, die von jedem Steuerelement angezeigt wird. Dies ist ein sehr schneller Ansatz, bei dem ein exaktes Bild des DataGridView -Steuerelements, das auf Ihrem Bildschirm erscheint, auf ein Bitmap gezeichnet wird, das Sie dann direkt an Ihren Drucker übergeben können.

Cody Gray 25.12.2010, 11:42
quelle