代码改变世界

ReportView学习笔记一(转载)

2010-03-01 16:23  爱研究源码的javaer  阅读(1061)  评论(0编辑  收藏  举报
本文介绍报表的基本使用, 从pubs数据库的表jobs提取数据显示到报表上(pubs数据库为sql server自带数据库), 如何获得报表上一个文本对象的值以及如何改变他的值

    以下为简单步骤:

    一. 添加新项,选中数据集

    二. 在新增的数据集中,右键添加DataTable,取名为jobs,并添加列job_id,job_desc,min_lvl,max_lvl这些列和jobs表  的列一致

    三. 添加新项,Crystal报表--选中报表向导(标准)--项目数据--ADO.NET 数据集--DataSet1--jobs,添加到右侧选定的表,  然后点击完成

    四. 双击新添加的报表(CrystalReport1.rpt),选择左侧的字段资源管理器,选中数据库字段,将jobs表的四个字段添加到右侧的Section3详细信息中,选中左侧的工具栏,拖动一个文本对象到section2(页眉)并取名为txtCh

    五. 添加一个新窗体(Form1), 从工具栏上拖动crystalReportViewer到界面上,并调整大小

    六. 在窗体的form_load事件中添加以下代码:

 


 1 
 2             try
 3             {
 4                 DataSet ds = new DataSet();
 5                 using (SqlConnection con = new SqlConnection("server=.;uid=sa;pwd=sa;database=pubs"))
 6                 {
 7                     SqlDataAdapter sa = new SqlDataAdapter("select * from jobs", con);
 8                     sa.Fill(ds, "jobs");//绑定数据集
 9 
10                     CrystalReport1 cr1 = new CrystalReport1();
11 
12 
13                     //为报表上添加的文本对象赋值
14                     TextObject to = (TextObject)cr1.ReportDefinition.ReportObjects["txtCh"];
15                     to.Text = "你好";
16 
17 
18                     //获得报表上文本对象的值
19                     TextObject to3 = (TextObject)cr1.ReportDefinition.ReportObjects["txtCh"];
20                     String s = to.Text;
21 
22 
23                     cr1.SetDataSource(ds);//报表关联数据源
24 
25                     this.crystalReportViewer1.ReportSource = cr1;  //设置报表
26                 }
27             }
28             catch (Exception ex)
29             {

转自:http://www.cnblogs.com/gossip/archive/2008/10/27/1320429.html

 

去除下划线页眉的下划线在属性的Font underLine属性