Oppure

Loading
Questo topic e' stato chiuso dal moderatore.
01/09/11 10:59
wuolfit
Scusate se apro un altro post ma le domande a differenza delle discussioni mi permettono solo di lasciar commenti e non di rispondere a tutti.....quindi se non è un problema riporto qui la domanda che feci nell'altro post e poi rispondo a VMikle e Il Totem che hanno gentilmente scritto nell'altro mio post.....

Allora la domanda era :

il mio problema è il seguente, sto creando un progetto in vb.net all'interno del quale vi è una form di esplorazione, ora vorrei fare in modo che l'utente una volta selezionato un file dalla listview e premuto il pulsante stampa, presente nel menu file, possa stampare suddetto file(deve essere un qualcosa indipendente dal tipo di file) ed avrei pensato a 2 possibili soluzioni che prevedono entrambe che si apra la printdialog per la selezione della stampante.
La prima soluzione è la seguente:

Private Sub PrintToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PrintToolStripMenuItem.Click
        If PrintDialog1.ShowDialog = Windows.Forms.DialogResult.OK Then     'Se nella finestra di dialogo si preme OK...
            PrintDocument1.Print(ListView.SelectedItems)                                          'Si stampa il contenuto della Sub "PrintDocument1_PrintPage"
        Else                                                                'Altrimenti...
            Exit Sub                                                        'Esco dalla sub
        End If
    End Sub


Mentre la seconda soluzione è la seguente :

Private Sub PrintToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PrintToolStripMenuItem.Click
        Dim printp As New Process
        If PrintDialog1.ShowDialog = Windows.Forms.DialogResult.OK Then     'Se nella finestra di dialogo si preme OK...
            printp.StartInfo.FileName = ListView.SelectedItems    
            printp.StartInfo.Verb = "Print"
            printp.Start()
        Else                                                                'Altrimenti...
            Exit Sub                                                        'Esco dalla sub
        End If
    End Sub


Però se uso la prima alternativa mi da un errore che dice Troppi Argomenti per 'Public Sub Print'
Mentre se uso la seconda midice che è impossibile convertire il valore di ListView.SelectedItems in string dov'è che sbaglio ????? Potreste darmi qualche dritta per favore????
aaa
01/09/11 11:06
wuolfit
Ora Come dicevo le risposte....grazie Totem e VMikle siete stato gentilissimi e chiarificatori.....ma a questo punto la mia domanda è la seguente .....come faccio io a dire a programma stampami il file che l'utente ha selezionato nella listview ????(ricordo che stiamo parlando una form esplorazione che è praticamente identica all'esplora risorse di windows)
aaa
01/09/11 22:22
Renny
Ciao. Rispondo solo in parte, ma spero possa servirti. Non ho mai usato la print Dialog. Quello che so è che devi scrivere del codice che converta l'item selezionato della tua listview (che, se l'item selezionato è 1 solo equivale a SelectedItems(0)) in una stringa che contenga il percorso del file da stampare. Tale stringa (presumo) è quella che dice al metodo print "cosa" stampare.. Gli errori derivano da quello: cerchi di stampare una collection di Item della listView, non 1 file (o il suo percorso nel'HD).. ciao8-|
aaa
02/09/11 7:46
wuolfit
Grazie mille Renny, sei stato chiarissimo!!!!
aaa
02/09/11 9:30
wuolfit
mi è venuto in mente perché non usare le opendialog? l'idea mi parve buona e facile da realizzare ma con l'inconveniente che non fa ciò che vorrei, cioé è vero che stampa, ma la pagina è bianca, qui sotto riporto il codice :

Private Sub btnSfogliaStampa_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSfogliaStampa.Click
 
        OpenFileDialog1.Title = "Sfoglia e Stampa"
        If OpenFileDialog1.ShowDialog = Windows.Forms.DialogResult.OK Then
            PrintDocument1.PrinterSettings.PrinterName = "nomestampante"
            PrintDocument1.Print()
            Else
                Exit Sub
        End If
    End Sub


dov'è che sbaglio???? come faccio a passargli il file che seleziono????
aaa
02/09/11 9:56
Il Totem
Questo topic è in violazione di una o più norme del regolamento: pierotofy.it/pages/extras/forum/9/3839-regolamento/ .
    
Dopo averlo letto riapri un nuovo topic assicurandoti di aver rispettato le regole. Grazie per la tua pazienza.
aaa