http://www.chinaaspx.com/club/showtopic.asp?TOPIC_ID=10773&Forum_ID=3
整个演示的操作过程说明:
1、 在解决方案资源管理器里,你需要存放报表文件处,添加新项:CrystalReport报表,起名为cr1.rpt
2、 在随后出现的“报表专家”中选择数据源时,请务必选择OLE DB,然后根据你的数据库的要求选择响应的驱动引擎:
SQL SERVER:Microsoft OLE DB Provider for SQL server
Access:Microsoft Jet.4.0
3、 输入正确的数据库连接,这一步大家一般的情况下不会出错!
4、 建立数据报表,并保存cr1.rpt文件
5、 打开webform1.aspx。添加crystalreportviewer控件:名称为:CrystalReportViewer1
6、 在webform1.aspx.cs中的page_load事件中添加上面的代码:
(注意:引用千万不要忘了!)

解决方案 »

  1.   

    谢谢luohzad,好了,我能不能再想问你一个问题我想传入一个或多个参数给水晶报表,应该在load事件中怎么写,对了,我怎么给你分啊!!!
      

  2.   

    引用别人的回答你:
    报表名是 rptTest.rpt,CrystalReportViewer名是crvRpt,显示报表的窗体名是frmReport首先:在rptTest.rpt设计时添加两个参数字段text1,text2然后 ...rptTest rpt=new rptTest();frmReport frm=new frmReport();
    frm.crvRpt.ReportSource=rpt;ParameterFields paramFields = new ParameterFields ();
    ParameterField paramField = new ParameterField ();
    ParameterDiscreteValue discreteVal = new ParameterDiscreteValue ();// 设置参数字段的名称,它必须
    //和报表中的参数相符。
    paramField.ParameterFieldName = "text1";
    // 设置第一个离散值并将其传递给该参数。
    discreteVal.Value = "tewterwtre";
    paramField.CurrentValues.Add (discreteVal);
    // 将该参数添加到参数字段集合。
    paramFields.Add (paramField);//设置第二个参数得重新赋值
    paramField=new ParameterField();
    discreteVal = new ParameterDiscreteValue ();paramField.ParameterFieldName = "text2";
    discreteVal.Value = "tretgertretre";
    paramField.CurrentValues.Add (discreteVal);
    paramFields.Add (paramField);frm.crvRpt.ParameterFieldInfo=paramFields;frm.Show();
    关于给分:管理-》输入密码--》输入分数--》给分(按钮)
      

  3.   

    我忘了说了,我要在网页的水晶报表中传入参数,我想上面的是在winform下的解决方法吧。