Crystal Report CurrentValues.Add反复添加相同的值

时间:2014-01-21 18:16:54

标签: c# crystal-reports reportviewer crystal-reports-xi

我想用.split将多个值传递给多值启用参数。如果我选择4个项目,则4个值将传递到水晶报告中,但所有4个值将与最后一个项目具有相同的值(即,如果我选择1,2,3,4水晶报告接收4,4,4,4)。

ParameterField f1 = CrystalReportViewer1.ParameterFieldInfo["Emp Id"];
ParameterDiscreteValue v1 = new ParameterDiscreteValue();
string LBL1 = Request.QueryString["LBL1"].ToString();
string[] LBL1split = LBL1.Split(',');

foreach (string item in LBL1split)
{
    v1.Value = item;
    f1.CurrentValues.Add(v1);
}

新值是否覆盖了.CurrentValues

中的现有项目

由于

1 个答案:

答案 0 :(得分:2)

您应该注意到您正在将课程传递给CurrentValues.Add方法

所以你唯一需要改变的是:

ParameterDiscreteValue v1 = new ParameterDiscreteValue();放入循环

ParameterField f1 = CrystalReportViewer1.ParameterFieldInfo["Emp Id"];
string LBL1 = Request.QueryString["LBL1"].ToString();
string[] LBL1split = LBL1.Split(',');

foreach (string item in LBL1split)
{
    ParameterDiscreteValue v1 = new ParameterDiscreteValue();
    v1.Value = item;
    f1.CurrentValues.Add(v1);
}