高手,我用的是vs2008的自带的水晶报表
报表里面设置了离散值的参数"客户姓名",并勾选了允许多个值的复选框
代码如下
 ParameterFields paramFields = new ParameterFields();
        ParameterField paramField = new ParameterField();
        ParameterDiscreteValue discreteVal = new ParameterDiscreteValue();//--离散值
        ParameterRangeValue rangeVal = new ParameterRangeValue();//--区域值 
        // 假设第一个参数是具有多个值的离散参数。
        // 设置参数字段的名称,它必须和报表中的参数相符。
        paramField.ParameterFieldName = "客户姓名";
        
        // 设置第一个离散值并将其传递给该参数。
        discreteVal.Value = "Jeason";
        paramField.CurrentValues.Add(discreteVal);
        //// 设置第二个离散值并将其传递给该参数。
        discreteVal = new ParameterDiscreteValue();
        discreteVal.Value = "Hank";
        paramField.CurrentValues.Add(discreteVal);        // 将该参数添加到参数字段集合。
        paramFields.Add(paramField);
      CrystalReportSource1.ReportDocument.Load(Server.MapPath("CrystalReport.rpt"));
        //CrystalReportSource1.ReportDocument.SetDataSource(ds.Tables["sql"]);
        CrystalReportSource1.DataBind();
        CrystalReportViewer1.ReportSource = CrystalReportSource1;
        CrystalReportViewer1.DataBind();
但结果是只显示"Jeason",一个值,显示"Hank",求解