Pagesetupdialog et format de page
Bonjour,
J'ai un formulaire qui me permet de choisir mes imprimantes dans une combobox ainsi que leur mise en page via un pagesetupdialog. Je visualise avec un print previewdialog.
Tout ça fonctionne assez bien sauf le cas suivant.
- Si mon imprimante par défaut est Pdfcreator (par exemple), j'arrive bien à créer tout type de formats avec cette imprimante (jusqu'au A0).
- Par contre, si l'imprimante par défaut en est une autre et que je sélectionne PdfCréator, voici que je n'arrive qu'à imprimer des A4 au maximum (même si A0 est bien sélectionné dans le pagesetupdialog).
J'ai bien peur de mal coder tout ça. Il y a un truc qui m'échappe.
Voici le code qui attribue l'imprimante au printdocument lors d'une nouvelle selection :
Code:
1 2 3 4 5 6 7 8 9
| Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged
'je reinitialise
PrintDocument1.PrinterSettings = New PrinterSettings
PrintDocument1.DefaultPageSettings = New PageSettings
'je redéfinis l'imprimante
PrintDocument1.PrinterSettings.PrinterName = ComboBox1.Text
End Sub |
Et voici le code associé au pagesetupdialog :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| Private Sub Mise_en_page(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click
Dim pagesetupdialog1 As New PageSetupDialog
Dim lepagesettings As New PageSettings
pagesetupdialog1.PrinterSettings = New PrinterSettings
pagesetupdialog1.PrinterSettings.PrinterName = ComboBox1.Text
pagesetupdialog1.PageSettings = lepagesettings
Try
Dim result As DialogResult = pagesetupdialog1.ShowDialog
If result = DialogResult.OK Then
PrintDocument1.DefaultPageSettings = lepagesettings
End If
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
End Sub |
Merci de m'aider.