Bonjour à tous et à toutes.
Exposé
J'avais créée un formulaire dédié à être imprimé. Mais l'impression d'un formulaire étant de trop mauvaise qualité, j'ai été contraint de créer une routine d'impression.
Seulement le résultat à l'impression n'est pas absolument identique à l'apparence de mon formulaire.
Alors j'ai décidé de ne plus afficher mon formulaire et de passer directement par un aperçu avant impression du résultat de ma routine d'impression.
Mon problème:
Je ne parviens pas à lancer à partir de l'aperçu avant impression (de l'icone imprimante de cet aperçu) le choix d'une imprimante (le printdalog)
Je n'ai pas de souci pour faire un aperçu avant impression
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 Private Sub ButtonPrint_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonPrint.Click Dim ppd1 As New PrintPreviewDialog pd.DocumentName = "Fiche de frais" AddHandler pd.PrintPage, AddressOf Me.Pd_PrintPage Dim ps2 As New PageSettings ps2.Landscape = False pd.DefaultPageSettings = ps2 ppd1.Document = pd ppd1.WindowState = FormWindowState.Maximized If ppd1.ShowDialog = Windows.Forms.DialogResult.OK Then ppd1.Document.Print() End If End Sub
ou de lancer un choix d'imprimante à partir d'un bouton.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 Private Sub ButtonPrint_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonPrint.Click Dim ppd2 As New PrintDialog pd.DocumentName = "Fiche de frais" AddHandler pd.PrintPage, AddressOf Me.Pd_PrintPage ppd2.Document = pd If ppd2.ShowDialog = Windows.Forms.DialogResult.OK Then ppd2.Document.Print() End If End Sub
Quel que soit ce que je met sous la conditon "If ppd1.ShowDialog = Windows.Forms.DialogResult.OK Then" c'est inlassablement l'impression sur l'imprimante par défaut qui se lance.
Ma question :
Existe-t-il une solution pour lancer printdalog à partir de la fenêtre printpreviewdialog ?
Merci
Partager