Impostare dimensioni foglio di stampa

mercoledì 13 ottobre 2004 - 12.32

Elena84 Profilo | Newbie

Ciao a tutti!
Ho un problema di questo tipo: in un programma ho la necessità di stampare su A5 e su A4 quindi vorrei impostare la dimensione del foglio da codice (senza dover far passare l'utente dalle impostazioni della stampante).
Ho provato in tutti i modi, anche impostando le dimensioni height e width ma da sempre errore.
Qualcuno può aiutarmi?
Grazie!

Elena

Elena84 Profilo | Newbie

Premettendo che è la prima volta che uso la stampa in VB.NET, ho cercato in internet degli esempi per poter impostare la dimensione del foglio sul quale stampare e ho trovato questo:

m_Doc.PrinterSettings.DefaultPageSettings.PaperSize = m_Doc.PrinterSettings.PaperSizes.Item(2) 'A4

dove m_Doc è dichiarato come segue:

Private WithEvents m_Doc As New PrintDocument

Ma quando mando la stampa (m_Doc.print) il foglio ha dimensione A5 (formato che ho impostato come predefinito sulla stampante).

Un altro esempio che ho trovato era quello di impostare l'altezza e la larghezza del foglio così:
m_Doc.DefaultPageSettings.PaperSize.Height = 210
m_Doc.DefaultPageSettings.PaperSize.Width = 297

ma mi da l'errore che non posso modificare questi valori a meno che Kind non sia impostato a Custom: ma come si fa?
Minimo mi sto perdendo in un bicchiere d'acqua...
Grazie 1000 in anticipo!

Elena

Elena84 Profilo | Newbie

Grazie per la pronta risposta! :)
L'ho letto il tuo articolo e...quello l'ho già fatto. Infatti m_Doc lo dichiaro ma poi lavoro su m_doc_PrintPage dove ho già inserito tutto per organizzare la stampa.
Il mio problema è che devo "semplicemente" dirgli di stampare su A4 o su A5 a seconda della situazione in cui mi trovo. E' possibile?
Grazie ancora per l'aiuto!

Elena

PS: se ho 20 anni? Si!!! E' un bel numero... :)

Elena84 Profilo | Newbie

Scusa ma...cioè?
E perchè mi dava errore quando imposto l'altezza e la larghezza dicendomi che è in sola lettura quando negli esempi che ho trovato facevano così?
Grazie ancora!

Elena

Elena84 Profilo | Newbie

Ho provato a inserire quel codice nell'evento printpage ma mi da lo stesso errore: è impossibile modificare height e width a meno che Kind non sia impostato a Custom.

Cosa vuol dire?

Elena84 Profilo | Newbie

Volevo dirti che ce l'ho fatta finalmente a impostare le dimensioni del foglio di stampa.
Ora perà ho un altro problema... :(
Quando mando la stampa, devo poter scegliere le pagine da stampare indicandone una d'inizio e una di fine. Sono riuscita a fare in modo che venga stampato solo il contenuto delle pagine indicate, ma al posto delle altre stampa fogli bianchi.
Mi spiego meglio: devo stampare il contenuto di un datagrid e tale stampa occupa 20 pagine. Io però ho bisogno di stamparne solo alcune, ad esempio dalla 5 alla 9: stampa dalla 1 alla 4 fogli bianchi, dalla 5 alla 9 il contenuto del datagrid correttamente, dalla 10 alla 20 fogli bianchi.
Si può evitare?
Grazie ancora dei suggerimenti!

Elena
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