Come posso stampare i dati da un DataGridView in C #?

Sto sviluppando un programma e ho bisogno di stampare i dati di Bills che vengono visualizzati in un controllo DataGridView.
Voglio sapere il codice su come stampare i dati in DataGridView.

Sto usando Visual Studio 2008 e C # 3.5

Non c’è alcun supporto per la stampa integrato in DataGridView , quindi dovrai implementarlo tu stesso. Ci sono un paio di possibili soluzioni:

  1. WinForms fornisce un sistema di stampa standard, che puoi sfruttare per stampare il contenuto del tuo controllo DataGridView . Ti consigliamo di utilizzare la class PrintDocument , quindi la documentazione pertinente è un ottimo punto di partenza per iniziare a leggere. Il vantaggio di questo metodo è che consente di controllare completamente il formato e il layout del documento stampato.

  2. È ansible esportare i dati da DataGridView in Microsoft Excel e quindi stamparli da lì. Excel ha un supporto di stampa integrato molto più robusto.

  3. Se non sei interessato a sviluppare la tua soluzione, puoi consultare CodeProject per alcune soluzioni già progettate. Per esempio:

    • La class DataGridViewPrinter
    • Stampa di una DataGridView su DotNet Framework
    • Un’altra stampante DataGridView
    • DataGridView Stampa selezionando colonne e righe

    Anche se non trovi una soluzione drop-in adatta alle tue esigenze, probabilmente puoi avere un’idea di come creare autonomamente questa funzionalità utilizzando il codice pubblicato come esempio.

  4. Se si è pronti per una soluzione davvero hacky (e non si ha alcun desiderio o necessità di personalizzare il layout o il design dell’output stampato), è ansible utilizzare il metodo DrawToBitmap esposto da ogni controllo. Si tratta di un approccio davvero rapido e preciso che disegna un’immagine esatta del controllo DataGridView come appare sullo schermo su una Bitmap , che può quindi passare direttamente alla stampante.