加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

vb.net – 以横向格式打印和预览DataGridView

发布时间:2020-12-17 00:32:55 所属栏目:大数据 来源:网络整理
导读:Private Sub btnPreview_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles btnPreview.Click preview.PrintPreviewControl.Zoom = 1 preview.Document = print print.PrinterSettings.DefaultPageSettings.Landscape = True previ
Private Sub btnPreview_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles btnPreview.Click
    preview.PrintPreviewControl.Zoom = 1
    preview.Document = print
    print.PrinterSettings.DefaultPageSettings.Landscape = True
    preview.Show()

    AddHandler print.PrintPage,AddressOf print_PrintPage

End Sub

Protected Sub print_PrintPage(ByVal sender As Object,ByVal e As PrintPageEventArgs)
    Dim ColumnCount As Integer = DataGridView1.ColumnCount
    Dim RowCount As Integer = DataGridView1.RowCount

    Dim CellTopPos As Integer = print.PrinterSettings.DefaultPageSettings.Margins.Top

    For Row = 0 To RowCount - 1

        Dim CellLeftPos As Integer = print.PrinterSettings.DefaultPageSettings.Margins.Left

        For Cell = 0 To ColumnCount - 1

            Dim CellValue As String = DataGridView1.Rows(Row).Cells(Cell).Value.ToString()
            Dim CellWidth = DataGridView1.Rows(Row).Cells(Cell).Size.Width + 50
            Dim CellHeight = DataGridView1.Rows(Row).Cells(Cell).Size.Height

            Dim Brush As New SolidBrush(Color.Black)
            e.Graphics.DrawString(CellValue,New Font("Century Gothic",10),Brush,CellLeftPos,CellTopPos)
            e.Graphics.DrawRectangle(Pens.Black,CellTopPos,CellWidth,CellHeight)

            CellLeftPos += CellWidth
        Next

        CellTopPos += DataGridView1.Rows(Row).Cells(0).Size.Height
    Next

End Sub

这是我预览和打印datagridview内容的代码.我尝试使用DefaultPageSettings代码,但它不起作用.我也试图以中心格式打印它

尝试设置PrintDocument的DefaultPageSettings属性,而不是PrinterSettings:
'PrintDocument1.PrinterSettings.DefaultPageSettings.Landscape = True
PrintDocument1.DefaultPageSettings.Landscape = True

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读