日期:2010-09-20  浏览次数:20530 次

  提要 本文试验将帮助你创建一个使用Crystal Report的Web应用程序—报告中的数据来源于一个对象集合,你将创建一个专门的类来保存股票市场数据。

  一、 开发目标

  结束本试验后,你将能够更好地:

  · 创建一个专门的类来保存股票市场值。

  · 实例化这个类。

  · 使用数据填充一个对象集合。

  · 通过一个web表单动态地添加数据。

  · 使用Crystal Report Designer熟练地创建一个水晶报表。

  二、 内容说明

  本实验将引导你创建一个Crystal Reports web应用程序—报告中的数据来源于一个对象集合。该应用程序是用Crystal Reports for Visual Studio 2005 Beta 2进行开发成功。

  然后,你将创建一个专门的类来保存股票市场值,实例化该类并使用数据填充一个对象集合,并且通过一个web表单进一步动态地添加数据。然后,你将创建一个水晶报表,通过使用Crystal Report Designer控件—它连接到对象集合并且动态地生成一个图表和股票摘要信息。

  三、 练习一:Web应用程序安装

  说明 在本练习中,你将创建一个新的网站,并且应用标准设置来完成此练习。

  详细步骤

  1. 在Visual Studio中创建一个新的ASP.NET Web站点。

  · 双击桌面上的Visual Studio 2005 Beta 2快捷方式。

  · 点击“文件|新建|网站”。

  · 在“新建网站”对话中,点击“ASP.NET 网站”。

  · 在“位置”列表中,选择“文件系统”。

  · 在“语言”列表中,选择“Visual C#”。

  · 在“位置”文本域中,接受默认的路径和名称。

  · 点击OK。

  2. 添加Crystal Report Viewer 控件。

  · 从Solution Explorer中,双击Default.aspx以打开该web表单。

  · 点击在该表单底部的“设计”按钮来把Web表单改变到设计视图。

  · 从工具栏中,展开Crystal Reports结点并且定位到CrystalReportViewer控件。

  · 把CrystalReportViewer控件拖动到该Web表单。
 
  · 如果“Smart Task”面板上的“CrystalReportViewer Tasks”被打开,则按下Esc键关闭它。

  · “Smart Task”面板是Visual Studio 2005中的一个新特征—允许用较少的代码来创建工程。在这个选项卡中,你将使用一种编程方式,因此不必使用“Smart Task”面板。

  · 点击Properties选项卡并且选择CrystalReportViewer。

  · 从Properties窗口中,把ID属性设置为crystalReportViewer。

  · 从文件菜单下,点击SaveAll。

  3. 添加编程环境。

  · 点击Solution Explorer选项卡。

  · 在Solution Explorer中,右击Default.aspx并且点击“View Code”。

  · 在类签名的上面,使用“using”语句加入对装配集命名空间的引用声明。

using CrystalDecisions.CrystalReports.Engine;
using CrystalDecisions.Shared;

  · 在这个类中,添加一个新的private型且无返回值的助理方法ConfigureCrystalReports()。

private void ConfigureCrystalReports()
{}

  · ConfigureCrystalReports()是一个助理方法—它负责在运行时刻与报告交互。它还负责以编程方式与报告进行交互。为了正确地配置CrystalReportViewer,必须从中Page_Init()调用它。

  · 使用显示的适当语法添加Page_Init事件处理器。

private void Page_Init(object sender, EventArgs e)
{}

  · 在Visual Studio 2005的一个C# Web表单中,在code-behind类中的Page_Init事件处理器是被自动地依附到Init事件的。这个事件处理器签名必须正确匹配以便进行调用。

  · 最后,在Page_Init事件处理器中,加入对ConfigureCrystalReports()助理方法的调用。

ConfigureCrystalReports();

  · 从文件菜单下,点击“Save All”。

  · 现在,你已经准备好创建你的定制股票市场信息类了。

  四、 练习2:创建一个定制的股票市场信息

  说明 在本练习中,你要创建一个定制的类来保存股票市场信息。这个类将用于填充一个对象集合。
详细步骤

  · 在Solution Explorer中,右击粗体的网站名,然后点击“Add New Item”。

  · 然后,出现“Add New Item ”对话框。

  · 在Visual Studio“Installed Templates”域中,选择“Class”。

  · 在Name字段中,输入Stock,然后点击Add。

  · 在随后出现的对话框中点击Yes。

  · 在Visual Studio 2005中,所有的类必须被放置到一个App Code文件夹下,如果要使用它们的话。当你点击Add按钮时,将出现一个警告对话框问你是否想把你的类放到这个App_Code文件夹下。

  · 本文中的Stock类必须被设置为public类,以便当你创建报告时存取它。请一定要确保你创建的类是public型。

public class Stock
{
 public Stock()
 {}
}

  · 在这个类中,加入三个private字段。

private string _symbol;
private double _price;
private int _volume;

  · 然后,你将把三个public读/写属性加入以封装这三个private字段。

  · 创建一个新的属性,命名为Symbol。

public string Symbol
{
 get
 {
  return _symbol;
 }
 set
 {
  _symbol = value;
 }
}

  · 创建一个新的属性,命名为Price。

public double Price
{
 get
 {
  return _price;
 }
 set
 {
  _price = value;
 }
}

  · 创建一个新的属性,命名为Volume。

public int Volume
{
 get
 {
  return _volume;
 }
 set
 {
  _volume = value;
 }
}

   · 最后,创建一个新的构造器,它使用三个public属性作为参数