WinForm中的水晶报表: 1:在窗体上加一个crystalReportViewer; 2:添加一个新的CrystalReport并且设计(可以先加一个数据集,然后在向导中添加到报表中) 3:在Form的Load()事件中: DataTable dt = new DataTable(); sring source = "server=(local);integrated security=sspi;database=northwind"; string select = "select * from products"; SqlConnection conn = new SqlConnection(source); conn.Open(); SqlCommand cmd = new SqlCommand(select, conn); SqlDataAdapter sda = new SqlDataAdapter(cmd); sda.Fill(dt); //******************** CrystalReport1 gxyCR = new CrystalReport1(); gxyCR.SetDataSource(dt); crystalReportViewer1.ReportSource = gxyCR 4:运行OK! Web中的水晶报表: 在Web上就不能用上面的方法了!!!! 1:在窗上加入CrystalReportViewer控件,并加上CrystalReportSource控件 2:添加一个新的CrystalReport并且设计(可以先加一个数据集,然后在向导中添加到报表中) 3:在Page_load()中添加代码如下: DataTable dt = new DataTable(); string conn = "server=(local);integrated security=sspi;database=northwind"; SqlConnection SqlConn = new SqlConnection(conn); SqlConn.Open(); SqlCommand cmd = new SqlCommand("select * from products", SqlConn); SqlDataAdapter SDA = new SqlDataAdapter(cmd); SDA.Fill(dt);
CrystalReportSource1.ReportDocument.Load(Server.MapPath("CrystalReport.rpt")); CrystalReportSource1.ReportDocument.SetDataSource(dt); CrystalReportViewer1.ReportSource=CrystalReportSource1.ReportDocument; CrystalReportSource1.DataBind(); //动态改变标题 TextObject to = (TextObject)CrystalReportSource1.ReportDocument.ReportDefinition.ReportObjects["title1"]; to.Text = "gggggggggg"; 4:运行页面OK!