WINFORM下创建水晶报表:
1、新建一个“windows应用程序”
2、添加一个数据集(.xsd)文件,它是ADO.NET数据集,数据集用于在断开缓存中存储数据,它的结构类似于关系数据库的接口,它公开表、行和列的分层对象模型。另外,它包含为数据集定义的约束和关系。数据集是容器,因此需要用数据填充它。
3、可以跟据向导一步一步的设置(这个别人都写过了,再写没有什么意思。)
4、添加一个报表文件(.rpt),如果需要多个也可以添加多个。就情况而定。
如下:
5、在form窗体里面添加CryStalReportView控件。
6、在Form1.cs文件的Form_Load事件中添加如下代码绑定数据(当然也可以在默认构造函数Form1()中添加如下代码):
privatevoid Form1_Load(object sender, EventArgs e)
{
string yy ="Data Source=.;Initial Catalog=Book;Integrated Security=True";
SqlConnection con =new SqlConnection(yy);
SqlCommand cmd =new SqlCommand("select * from CuserInfo", con);
con.Open();
SqlDataAdapter sda =new SqlDataAdapter(cmd);
DataSet1 ds1 =new DataSet1();
sda.Fill(ds1, "CuserInfo");
CrystalReport1 cry =new CrystalReport1();
cry.SetDataSource(ds1);
crystalReportViewer1.ReportSource = cry;
}
{
string yy ="Data Source=.;Initial Catalog=Book;Integrated Security=True";
SqlConnection con =new SqlConnection(yy);
SqlCommand cmd =new SqlCommand("select * from CuserInfo", con);
con.Open();
SqlDataAdapter sda =new SqlDataAdapter(cmd);
DataSet1 ds1 =new DataSet1();
sda.Fill(ds1, "CuserInfo");
CrystalReport1 cry =new CrystalReport1();
cry.SetDataSource(ds1);
crystalReportViewer1.ReportSource = cry;
}
注意:一定要知道数据集的含义,新手的话就去了解一下吧(比如我)。不然照着人家的就是做不出来。我就出现了这样的问题。在数据集里面添加了一个DataTable1,又建了几个字段,可是没有数据。所以每次运行都是只出来列名,没有数据。
数据集里面的表,应该是从数据库里面添加进去的。(可以直接拖进去VS中),也许可以那样做,可是本人现在水平有限,只知道这样子做,如果有更好的办法一定会记录下来的。
不过现在知道了。这也是进步,每天进步一点点。。。嘿嘿。。。