20180511--更新 1、添加导出电子报表功能 2、代码实现打印功能
注意这个装DevExpress 控件
主要功能
把数据库的数据填充到报表,打印报表
源码实例下载地址: http://pan.baidu.com/s/1kVkKym7 密码: qmc4
XtraReport横向显示
属性中设置 代Landscape 属性 ,为true就是横向打印
xtraReport.Landscape =true;
设置后 高度 ,长度 要进行调整。 跟 false 的时候 倒过来
核心代码如下
XtraReport 里面代码,主要是邦定数据作用
public XtraReport1(DataRow dr)//构造函数重载
{
InitializeComponent();
SetDataBind(dr);
}
private void SetDataBind(DataRow dr)//绑定数据源
{
xrTID.Text = dr[0].ToString();//或用xrTID.Text = dr["id"].ToString();//id为行的字段
xrTuserName.Text = dr[1].ToString();
xrTuserPass.Text = dr[2].ToString();
xrTuserQQ.Text = dr[3].ToString();
xrPictureBox1.ImageUrl =AppDomain.CurrentDomain.BaseDirectory+ dr[4].ToString();
}
显示到控件里面核心代码如下
private void btnReport_Click(object sender, EventArgs e)
{
string sqlStr = "select * from testReport";
DataSet ds = DAL.SQLiteHelper.ExecuteQuery(sqlStr);//获得数据
try
{
XtraReport1 xr = new XtraReport1(ds.Tables[0].Rows[0]);
xr.CreateDocument();//创建报表
XtraReport2 xr2 = new XtraReport2(ds.Tables[0].Rows[1]);
xr2.CreateDocument();
xr.Pages.AddRange(xr2.Pages);//显示报表添加第二页
//20180511添加功能
//注意:导出电子档中文乱码 解决方案是 改报表字体
//详情请看 http://www.luofenming.com/show.aspx?id=ART2018042800002
// xr.ExportToPdf(@"D:\123.pdf");//导出PDF电子档
// xr.ExportToXlsx(@"D:\123.xlsx");//导出xlsx电子档
// xr.ExportToRtf(@"D:\123.doc");//导出doc电子档 还可以导出更多类型的电子档,在这里就不一一列出
//20180511添加功能
// xr.PrintingSystem.ShowMarginsWarning = false; //取消超出边界提示框。见上篇文章
// xr.PrinterName = "Epson LQ-150K";//打印机名称
// xr.Print();//打印报表功能
this.documentViewer1.PrintingSystem = xr.PrintingSystem;
}
catch (Exception ex)
{
}
}