ciao,
sinceramente trovo verametne noioso il fatto che Crystal non esponga un evento di printing, bisogna fare dei giri assurdi per ottenere qualcosa di ingarbugliato e che spesso poi non è facile da manutenere.
A parte questo pensiero, dal punto di vista operativo per pilotare il numero di pagine da stampare, devi usare l'oggetto printerSettings, ovvero puoi aprire la form di stampa classica di windows tramite:
PrintDialog pd = new PrintDialog();
pd.ShowDialog();
oppure lavorare direttamente con:
PrinterSettings printer = new PrinterSettings();
PageSettings page = new PageSettings();
e fin qui vai via tranquillo.
Il problema è che per stampare il report con queste impostazioni si dovrebbe usare questo metodo:
mioreportDocument.PrintOptions.CopyFrom(printer, page);
ma a me da errore in esecuzione, non capisco quale sia la proprieta' che non gli piace.
Prova tu magari hai piu' fortuna...
Eventualemnte io al tempo mi facevo un bottone mio di stampa, e poi invocavo il metodo "mioreportDocument.PrintToPrinter(" che come proprieta' ha anche il numero di copie.
Purtropppo come ti dicevo all'inizio insomma non conosco soluzioni eleganti, la cosa da fare se pur classica e semplice, diventa una difficolta'....
ciao.
Matteo Raumer
[MCAD .net]
http://blogs.dotnethell.it/freeteo