hallo leute,
ich habe vor, ein diagramm zu drucken. dazu möchte ich es erst in einem printpreview-dialog anzeigen lassen. dort ggf. die über einen pagesetup-dialog seitenränder etc. definieren um dann beim click auf das druckersymbol im printpreview den printdialog zu öffnen, den drucker auswählen und hoffentlcih freuen, dass das diagramm aus dem drucker kommt.
leider gibts da ein problem: der printpreview für sich funktioniert super, nur mit der einbindung des pagesetup und des printdialog gibts probleme, d.h. es passiert gar nix, außer dass der printdialog direkt beim öffnen des printpreview mit geöffnet wird.
wollte eigentlich einen zusätzlichen button in die menüleiste des printpreview machen, so dass der pagesetup erst kommt, wenn man da drauf drück.
hier mal der code:
vielleicht habt ihr ja ne idee woran es liegen könnte.
ich habe vor, ein diagramm zu drucken. dazu möchte ich es erst in einem printpreview-dialog anzeigen lassen. dort ggf. die über einen pagesetup-dialog seitenränder etc. definieren um dann beim click auf das druckersymbol im printpreview den printdialog zu öffnen, den drucker auswählen und hoffentlcih freuen, dass das diagramm aus dem drucker kommt.
leider gibts da ein problem: der printpreview für sich funktioniert super, nur mit der einbindung des pagesetup und des printdialog gibts probleme, d.h. es passiert gar nix, außer dass der printdialog direkt beim öffnen des printpreview mit geöffnet wird.
wollte eigentlich einen zusätzlichen button in die menüleiste des printpreview machen, so dass der pagesetup erst kommt, wenn man da drauf drück.
hier mal der code:
VB.NET-Quellcode
- Private WithEvents pd_PrintDoc As New System.Drawing.Printing.PrintDocument
- Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
- pd_PrintDoc = Chart1.Printing.PrintDocument
- AddHandler pd_PrintDoc.PrintPage, AddressOf Me.pd_PrintPage
- PrintPreviewDialog1.Document = pd_PrintDoc
- PageSetupDialog1.Document = pd_PrintDoc
- PrintPreviewDialog1.PrintPreviewControl.AutoZoom = True
- PrintPreviewDialog1.PrintPreviewControl.Dock = DockStyle.Fill
- PrintPreviewDialog1.PrintPreviewControl.Zoom = 1
- PrintPreviewDialog1.Document.DefaultPageSettings.Landscape = True
- PrintPreviewDialog1.Document.DefaultPageSettings.Margins = New Printing.Margins(79, 79, 79, 79)
- PrintPreviewDialog1.ShowIcon = True
- PrintPreviewDialog1.AutoSizeMode = Windows.Forms.AutoSizeMode.GrowAndShrink
- PrintPreviewDialog1.Controls.Add(PageSetupDialog1.Container)
- PrintPreviewDialog1.ShowDialog()
- If PageSetupDialog1.ShowDialog() = Windows.Forms.DialogResult.OK Then
- PrintPreviewDialog1.Document.DefaultPageSettings = PageSetupDialog1.PageSettings
- PrintPreviewDialog1.Document.PrinterSettings = PageSetupDialog1.PrinterSettings
- End If
- End Sub
- Private Sub pd_PrintPage(sender As Object, e As System.Drawing.Printing.PrintPageEventArgs) Handles pd_PrintDoc.PrintPage
- PrintDialog1.Document = pd_PrintDoc
- If PrintDialog1.ShowDialog() = Windows.Forms.DialogResult.OK Then
- pd_PrintDoc.Print()
- End If
- End Sub
vielleicht habt ihr ja ne idee woran es liegen könnte.
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „affrop“ ()