我正在vb.net中创建一个应用程序。我的vb表单中有一个datagridview控件。我需要在打印预览窗口中查看它及其内容。我在表单中有其他控件,如标签和文本框,我可以在打印预览中查看所有控件。在Datagridview控件的情况下,我有一个工作的printpreview代码,它是我从网上得到的。我的问题是,我需要更改datagridview控件的x和y位置。使用以下代码,datagridview控件将显示在其他控件之上。我不知道如何在这个代码中做到这一点。请帮帮我。我需要更改DataGridView的x和y位置,如下面的代码(50和225)所示。e.Graphics.DrawString(Label7.Text,Label7.Font,Brushes.Black,50225)
下面给出了我用来显示gridview的代码。
代码:
Dim ColumnCount As Integer=DataGridView1.ColumnCountDim RowCount As Integer=DataGridView1.RowCount
Dim CellTopPos As Integer = PrintDocument1.PrinterSettings.DefaultPageSettings.Margins.Top
For Row = 0 To RowCount - 2
Dim CellLeftPos As Integer = PrintDocument1.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 + 10
Dim CellHeight = DataGridView1.Rows(Row).Cells(Cell).Size.Height
Dim Brush As New SolidBrush(Color.Black)
e.Graphics.DrawString(CellValue, New Font("arial", 9), Brush, CellLeftPos, CellTopPos)
e.Graphics.DrawRectangle(Pens.Black, CellLeftPos, CellTopPos, CellWidth, CellHeight)
CellLeftPos += CellWidth
Next
CellTopPos += DataGridView1.Rows(Row).Cells(0).Size.Height
Next
使用此类。。不幸的是,有字符限制,所以我不能发布代码http://www.codeproject.com/Articles/18042/Another-DataGridView-Printer