水晶报表的PUSH模式

水晶报表一般分为pull模式以及push模式。pull模式是指使用控件连接数据,push模式是指使用代码的方式。

由于进行编码练习,所以也就没有进行pull的尝试。

以下是一个最简单的水晶报表的PUSH模式。

1. rpt 报表模版

image

2. 数据表结构

image

3. Form样式

image

控件类型:CrystalReportViewer

控件名称:BasePrintForm

4.详细代码

View Code
 1 using System;
2 using System.Collections.Generic;
3 using System.ComponentModel;
4 using System.Data;
5 using System.Drawing;
6 using System.Linq;
7 using System.Text;
8 using System.Windows.Forms;
9 using System.Data.SqlClient;
10 using CrystalDecisions.CrystalReports.Engine;
11
12 namespace WindowsFormsApplication1
13 {
14 public partial class Form1 : Form
15 {
16 public Form1()
17 {
18 InitializeComponent();
19
20 SqlConnection conn = new SqlConnection();
21 UserInfo ds = new UserInfo();
22 string strDBConnection = "Data Source=BURGEON-74AD842;Initial Catalog=Test;Integrated Security=True;Pooling=False";
23 conn.ConnectionString = strDBConnection;
24 string strSQLCommond = "SELECT [User].* FROM [User]";
25 SqlDataAdapter adapterUserInfo = new SqlDataAdapter(strSQLCommond, conn);
26 adapterUserInfo.Fill(ds,"User");
27
28 //实例化模版对象
29 UserInfoForm report = new UserInfoForm();
30 //设置报表模版数据源
31 report.SetDataSource(ds);
32 //使用模版的参数字段
33 report.SetParameterValue("Title", "推模型");
34 //绑定已有数据的模版对象到Viewer控件
35 BasePrintForm.ReportSource = report;
36 }
37 }
38 }



其他说明:
使用以上的小例子,只能够将数据显示到具有打印功能的控件中,如果想要打印出成品,还需要点击控件上面的打印按钮。
posted @ 2011-10-13 17:16  Margin22  阅读(1123)  评论(0编辑  收藏  举报