步骤:
1.新建一个数据集,然后将数据库里面的表托放到DataSet2.xsd里面
2.新建一个水晶报表,根据向导完成水晶报表的制作,效果图如下:
3.新建一个WINDOWS窗体,并在窗体里面放置一个CrystalReportViewer控件,单击右上角的小三角行,然后选择需要显示的报表,并设置报表的路径,
效果图如下:
4.接下来是后台代码的绑定了:
03 |
sql = "select * from 表名" |
04 |
SqlConnection con= new Sqlconnection( "数据连接字符串" ); |
05 |
SqlDataApter da= new SqlDataApter(sql,con); |
06 |
DataSet ds= new DataSet(); |
07 |
CrystalReport1 cry= new CrystalReport1 (); |
10 |
cry.SetDataSource(ds.Tables( "dgv" )) |
11 |
CrystalReportViewer1.ReportSource = cry |
13 |
如果要实现打印功能,还需修改一下,以下是打印的功能:(这个打印功能不是CrystalReportViewer1里面自带的): |
01 |
<PRE class =brush:csharp>String sql= "" ; |
02 |
sql = "select * from Employee" ; |
03 |
SqlClient.SqlConnection con= null ; |
04 |
SqlClient.SqlDataAdapter da= null ; |
05 |
DataSet ds= new DataSet(); |
06 |
con = New SqlClient.SqlConnection( "Data Source=PC-201005072138;Initial Catalog=Company;Persist Security Info=True;User ID=sa;Password=ddddd" ); |
08 |
da = New SqlClient.SqlDataAdapter(sql, con) |
11 |
PrintDocument printDt = New PrintDocument(); |
12 |
ReportDocument rd= New ReportDocument(); |
13 |
rd.Load(Application.StartupPath + "\CrystalReport1.rpt" ); |
15 |
rd.SetDatabaseLogon( "sa" , "ddddd" ); |
17 |
String strDefaultPrinter= printDt.PrinterSettings.PrinterName; |
18 |
rd.PrintOptions.PrinterName = strDefaultPrinter; |
19 |
rd.PrintToPrinter(1, True, 0, 0); |
21 |
<PRE class =brush:csharp>以上代码是个人在做的时候用的,如有什么地方错误的话,欢迎留言... | |