Anteprima di stampa

domenica 31 agosto 2008 - 15.37

sergio58 Profilo | Junior Member

Salve a tutti,
Ho un progetto con formMdi, in un form figlio , ho la routine printdocument per stampare alcune pagine di documento.
In questo form figlio esiste il comando: Private Documento As Printing.PrintDocument
che mi rimanda al frAnteprima che allego. Nella routine printdocument esiste la variabile static che cona il numero delle pagine.
Il problema è prorpio questo, che non riesco a far passare alla form anteprima il valore della variabile che conta il numero delle pagine.Ho meglio è solo dopo che schiaccio il pulsante avanti che appare nella label.Come se il programma si fosse fermato e riprendesse con la pressione del pulsante.
In printdocument ho provato a scivere:mintpagine=pagine
La variabile mintPagine è dichiarata a livello di modulo.
Vi allego il file anteprima per meglio comprendere dove sbalgio.
Grazie a tutti
Sergio

SSUPERPIPPO Profilo | Guru

Ciao,

a colpo d'occhio, che a quest'ora è un po' offuscato (), proverei cosi':

Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra

Prova, se non funziona fammi sapere che gli dò un'occhiata da 'sveglio'

Ciao

Alessandro


http://blogs.dotnethell.it/alebadalin

sergio58 Profilo | Junior Member

Ciao SSuperpippo, e grazie per avermi risposto.
Ho inserito le modifiche,purtroppo l'inserimento di mintPagine nella property mi dà messaggio di errore "L'espressione non è un metodo".Ho cambiato in mintPagine=value , ma senza risultato.
Sono andato in debug , e il frmAnteprima_load avviene prima che sia scaricata la routine printdocumenti_click.
Per cui mintPagine =0.

SSUPERPIPPO Profilo | Guru

>Ciao SSuperpippo, e grazie per avermi risposto.
>Ho inserito le modifiche,purtroppo l'inserimento di mintPagine
>nella property mi dà messaggio di errore "L'espressione non è
>un metodo".Ho cambiato in mintPagine=value , ma senza risultato.
>Sono andato in debug , e il frmAnteprima_load avviene prima che
>sia scaricata la routine printdocumenti_click.
>Per cui mintPagine =0.
>

Ciao,
credo che il tuo problema sia nella creazione dell'istanza di frmAnteprima.
L'evento Load si scatena sempre quando richiami il metodo Show del form per cui dovresti settare la property prima di richiamare tale metodo.
In sostanza devi:

-Istanziare l'oggetto frmAnateprima
-Settare la property mintPagine
-Richiamare il metodo Show

Non sò se ho centrato il problema, se al limite posti il codice che utilizzi per istanziare il form gli dò un'occhio.

Ciao

Ale

http://blogs.dotnethell.it/alebadalin

sergio58 Profilo | Junior Member

Il frmAnteprima viene instanziato nel button del comanda stampa:
Questo è il codice
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Documento = New Printing.PrintDocument
AddHandler Documento.PrintPage, AddressOf prtAllegatiCli_for_PrintPage
Dim anteprima As New frmAnteprimaAllegati(Documento)
anteprima.ShowDialog()
End Sub
Ciao sergio.
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