当前位置:文档之家› WinForm中打印控件的用法

WinForm中打印控件的用法

WinForm中打印控件的用法Winform
一、放三个有关打印的控件printDialog、printDocument、printPreviewDialog

二、设置printPreviewDialog控件的Document属性,该属性一般会设置为printDocument控件

三、写printDocument中的PrintPage事件,在该事件设置打印的位置和样式

例如:

1、从控件中取出数据放入DataTable

DataTable objDataTable = (DataTable)this.dataGridView1.DataSource;

2、设置打印时的横坐标和纵坐标
int StartX = 0;
int StartY = 120;

3、设置标题的内容、字体、字体大小、颜色、坐标位置
e.Graphics.DrawString("广东步步高电子工业有限公司出库批次情况", new Font("Arial", 20), Brushes.Black, 100, 40);
e.Graphics.DrawString("打印时间:" + DateTime.Now.ToString(), new Font("Arial", 8), Brushes.Red, 560, 100);
e.Graphics.DrawString("单号", new Font("Arial", 10), Brushes.Red, StartX, StartY);
e.Graphics.DrawString("批号", new Font("Arial", 10), Brushes.Red, StartX + 95, StartY);
e.Graphics.DrawString("区域编号", new Font("Arial", 10), Brushes.Red, StartX + 190, StartY);
e.Graphics.DrawString("品种", new Font("Arial", 10), Brushes.Red, StartX + 285, StartY);
e.Graphics.DrawString("规格", new Font("Arial", 10), Brushes.Red, StartX + 380, StartY);
e.Graphics.DrawString("计划发货数", new Font("Arial", 10), Brushes.Red, StartX + 475, StartY);
e.Graphics.DrawString("实际发货数", new Font("Arial", 10), Brushes.Red, StartX + 570, StartY);
e.Graphics.DrawString("发货日期", new Font("Arial", 10), Brushes.Red, StartX + 665, StartY);
e.Graphics.DrawString("员工编号", new Font("Arial", 10), Brushes.Red, StartX + 760, StartY);

4、从DataTable中读出数据

for (int row = 0; row < objDataTable.Rows.Count; row++)
{

DataRow objDataRow = objDataTable.Rows[row];
for (int i = 0; i < objDataTable.Columns.Count; i++)
{
e.Graphics.DrawString(objDataRow[i].ToString(), new Font("Arial", 9), Brushes.Black, StartX, StartY + 50);
e.Graphics.DrawString("-----------", new Font("Arial", 10), Brushes.Blue, StartX, StartY + 70);
StartX = StartX + 95;

}
StartX = 0;
StartY += 50;

}

四、然后打印 (也就是点击打印按钮或者别的控件)

1、设置显示页面的大小

printPreviewDialog1.PrintPreviewControl.Zoom = 1.0;

2、设置宽度和高度
printPreviewDialog1.Width = Screen.PrimaryScreen.Bounds.Width;
printPreviewDialog1.Height = Screen.PrimaryScreen.Bounds.Height;


printPreviewDialog1.ShowDialog();

相关主题
文本预览
相关文档 最新文档