1.用RDLC报表(一) 网上介绍常用方法(转载):可以设计通用报表,相对易用。
启动VS2005新建一个窗体项目,命名为TestProj
在左边的窗体内选择“添加新数据源”或在菜单上操作“添加新数据源”:
选择后出现对话窗体,选择“数据库”,进入“下一步”:
本数据源以SqlServer2000所提供的Northwind数据库为例,因此在数据库内选择驱动程序为SqlServer,具体操作视所用数据库而定(如果连接为Oracle,建议用Oracle所提供的ODP for .NET,地址:http://www.oracle.com/technology/global/cn/software/tech/windows/odpnet/index.html)。
选择数据源后,指定数据库文件,并进行测试,如果连接不通,请检查你的软件设置。
进行下一步,至显示出库文件内的表及视图,然后打开表,并选择其中的Employees,选择完成。
在数据源窗口中显示出所选择表及表内的字段,以备使用。
同时在资源管理器中,也可以看到新增加的数据文件。
2.PrintpreviewDialog +GUI:灵活 在.net 中有相应的控件对应上述的应用操作.
1.页面设置,使用pagesetupDialog控件
2.打印机设置,使用PrintDialog控件
3.打印预览,PrintpreviewDialog控件
4.打印,利用PrintDocument.print()进行打印..
其它控件较易理解,在此主要说一下printDocument控件.
PrintDocument 控件本质的说,它是一个指向内存区域的指针.
该内存区域存放的就是要打印的内容.而且其中包括页面格式,如横印,直印,A3纸,A4
纸设置等,
printdocument控件也可以理解是一张"白纸",你可以在上面写上任何东东..比如文字
, 图片,各种图案.等等..你写上什么,它就打印什么..有一个很重要的"动作"要注意.
就是在什么时候"写上"东东呢..这个要写的"时间"就是用printpage事件..
printpage事件,表示当要在printdocument写东东时,会触发该事件..然后你可以在该
事件放上你要写的东东.比如在 :
private void printDocument1_PrintPage(object sender,
System.Drawing.Printing.PrintPageEventArgs e)
{
Graphics g = e.Graphics; //获得绘图对象,
g.DrawLine(myPen,0,0,10,0); //表示在打印时画一直线
}