Stampare il contenuto di una datagridview

mercoledì 11 febbraio 2009 - 15.19

Samb1985 Profilo | Junior Member

Ho una datagridview che contiene dati presi da un db sql server.
Ho bisogno di associare ad un pulsante button la stampa su foglio A4 del contenuto della tabella (datagridview).
Qual'è il codice c# per utilizzare i controlli PrintDialog e PrintDocument ?

amdbook Profilo | Junior Member

Prova questo esempio: http://www.pietrolibro.name/Download/Stampa%20gridview.zip
Oppure ad utilizzare Reporting Services, Crystal Reports, o altri...

>>Pietro Libro
Blog: http://blogs.ugidotnet.org/PietroLibroBlog/

Samb1985 Profilo | Junior Member

non ci sono esempi in c# simili a questo ? col vb non me la cavo

amdbook Profilo | Junior Member

Mi dispiace, ma non ho ancora avuto il tempo di eseguire la conversione...

>>Pietro Libro
Blog: http://blogs.ugidotnet.org/PietroLibroBlog/

Gianni77 Profilo | Junior Member

>non ci sono esempi in c# simili a questo ? col vb non me la cavo

Puoi sempre provare a convertirlo... : http://converter.telerik.com/

Teech Profilo | Expert

Prova uno di questi:
http://visualstudiomagazine.com/columns/article.aspx?editorialsid=1949
http://www.codeproject.com/KB/printing/datagridviewprinter.aspx
http://www.codeproject.com/KB/printing/PrintingOfDataGridView.aspx
http://www.codeproject.com/KB/printing/DGVPrinter.aspx

--------------
Maurizio Brini
--------------
Nessuna impresa è mai stata compiuta da un uomo ragionevole

Samb1985 Profilo | Junior Member

Ho provato il secondo link che è abbastanza semplice, ma non mi funziona...mi stampa la pagina bianca.
Ho provato il terzo link stessa cosa...nessun errore e quando si fa stampa c'è solo la pagina bianca nonostanze il datagridview contiene almeno una riga.

Da cosa può dipendere ?

Gianni77 Profilo | Junior Member

Serviva la stessa cosa anche a me. Ho provato ad utilizzare quel file .zip, l'esempio contenuto mi funziona, se applico la stessa cosa ad un mio datagridview (caricato con dati provenienti da database) non funziona, esce: nulla da stampare. Ho provato pure io quei link ma niente di immediatamente funzionante (e poi mi serviva in vb.net). Sempre su codeproject ho ricercato ancora ed è uscito questo:

http://www.codeproject.com/KB/grid/PrintDataGrid_CS.aspx

che ... finalmente ha funzionato a dovere. E' anche molto carino perchè esce una finestra che ti chiede quali colonne e quali righe stampare, è facilmente modificabile e io mi ci sono trovato molto bene. Ci sono gli esempi sia in vb.net che in c#

Samb1985 Profilo | Junior Member

Per Gianni77: L'esempio usa un datagrid io ho un datagridview, cosa devo modificare per adattarlo al mio caso ?

Sto provando il 4 esempio sopra (DGV Printer), è facilissimo da utilizzare e sembra funzionare bene a meno di qualche eccezzione che viene lanciata ogni tanto.

Gianni77 Profilo | Junior Member

GUarda che l'esempio che ti ho postato io utilizza un datagridview, difatti io lo utilizzo con un datagridview e funziona.
Difatti se leggi l'ultima riga dell'introduzione:

So a class named PrintDG was implemented, and it can be used in an application. I have done it both for DataGrid and DataGridView, in C# and VB.NET

quindi è molto flessibile

Samb1985 Profilo | Junior Member

Nel source C# c'è quello per DataGrid, non ho trovato quello per DataGridView...comunque ho risolto con l'altro esempio.
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2023
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5