Bonjour,
Dans le but de gérer facilement l'impression d'une facture dans un logiciel de facturation, j'ai décidé de créer une classe pour cela mais je ne parviens pas à afficher l'aperçu dans la boîte prévue à cet effet.
J'ai effectivement à chaque fois une exception de type "Argument invalide" qui est levée au moment de l'affichage.
Voici le code de ma classe :
Et l'objet utilisé dans l'application cliente :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 Imports System.Drawing Imports System.Drawing.Printing Public Class InvoicePrintingJob Private p_PreviewDialog As New System.Windows.Forms.PrintPreviewDialog Private WithEvents p_InvoiceDoc As New PrintDocument Public Sub New() End Sub Public Sub Preview() p_PreviewDialog.Document = p_InvoiceDoc p_PreviewDialog.UseAntiAlias = True p_PreviewDialog.ShowDialog() End Sub Private Sub InvoiceDoc_PrintPage(ByVal sender As Object, ByVal e As PrintPageEventArgs) Handles p_InvoiceDoc.PrintPage e.Graphics.DrawString("Test", New Font("Verdana", 10), Brushes.AliceBlue, 200, 200) End Sub End Class
Je ne comprends pas pourquoi se présente cette erreur. De plus, j'ai fait l'essai avec une boîte de dialogue PrintDialog et là pas d'erreur...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 Private Sub AperçuToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles AperçuToolStripMenuItem.Click Try Dim PrintJob As New DocumentPrinting.InvoicePrintingJob() PrintJob.Preview() Catch ex As Exception MsgBox(ex.Message, MsgBoxStyle.Critical) End Try End Sub End Class
Une idée ?
Merci d'avance,
webrider
Partager