使用PrintForm功能在横向打印表格

时间:2019-04-17 18:09:49

标签: vb.net visual-studio visual-studio-2010 printing printform

我有一个问题,我正在尝试横向打印表格,以便可以打印表格的所有内容。

这是裁切的打印预览外观。

enter image description here

我正在使用此代码进行打印,还使用横向模式来实现我在Google中的搜索。

 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    Me.PrintForm1.PrinterSettings.DefaultPageSettings.Landscape = True
    Me.PrintForm1.PrintAction = Printing.PrintAction.PrintToPreview
    Me.PrintForm1.Print()
End Sub

但是结果相同。 谢谢。

1 个答案:

答案 0 :(得分:1)

一段时间以前,我是通过在Google搜索中找到的内容来做到这一点的。它会为您提供一个Printersettings对话框,您可以在其中选择打印前的风景。如果有内存,则Printform.PrinterSettings.DefaultPageSettings.Landscape是只读的或有问题。无论如何,不​​记得了,您将需要在表单中添加PageSetupDialog和PrintDocument。然后将代码更改为此:

    PageSetupDialog1.Document = PrintDocument1
    If PageSetupDialog1.ShowDialog = DialogResult.OK Then
        PrintForm1.PrinterSettings = PageSetupDialog1.PrinterSettings
        If PrintForm1.PrinterSettings.IsValid Then
            PrintForm1.Print()
        End If
    End If

单击按钮1时,系统会提示您一个页面设置对话框,您可以在其中选择横向。单击“确定”,您的表单应打印横向。

我猜是否不需要页面设置对话框,只需将PageSetupDialog1的设置设置为“横向”即可打印出来。

    PageSetupDialog1.Document = PrintDocument1
    PageSetupDialog1.PrinterSettings.DefaultPageSettings.Landscape = True
    PrintForm1.PrinterSettings = PageSetupDialog1.PrinterSettings
    If PrintForm1.PrinterSettings.IsValid Then
        PrintForm1.Print()
    End If