打印dataGridView内容 rowcount = 0;//记录数据的行数
string paperName = Page_Size(PageSheet);//获取当前纸张的大小
PageSettings storePageSetting = new PageSettings();//实列化一个对PageSettings对象
foreach (PaperSize ps in printdocument.PrinterSettings.PaperSizes)//查找当前设置纸张
if (paperName == ps.PaperName)//如果找到当前纸张的名称
{
storePageSetting.PaperSize = ps;//获取当前纸张的信息
}
if (datagrid.DataSource.GetType().ToString() == "System.Data.DataTable")//判断数据类型
{
rowcount = ((DataTable)datagrid.DataSource).Rows.Count;//获取数据的行数
}
else if (datagrid.DataSource.GetType().ToString() == "System.Collections.ArrayList")//判断数据类型
{
rowcount = ((ArrayList)datagrid.DataSource).Count;//获取数据的行数
}
try
{
printdocument.DefaultPageSettings.Landscape = PageScape;//设置横向/纵向打印
pagesetupdialog.Document = printdocument;
printpreviewdialog.ShowDialog();//显示打印预览窗体
}
catch (Exception e)
{
throw new Exception("printer error." e.Message);
}
评论