具有多个水晶报告记录的参数离散值c#

时间:2013-12-17 13:45:32

标签: c# crystal-reports

下面的代码获取了从datatable获取的参数,我已经为该表中的多个记录循环了相同的参数。 我希望这些值应该被添加并显示多个记录(页面),而不是它被覆盖并只显示1页水晶报告。

for (int i = 0; i <= table.Rows.Count - 1; i++)
        {
            crParameterDiscreteValue2.Value = table.Rows[i].ItemArray[4];//table.Rows[0].ItemArray[4];
            crParameterFieldDefinitions2 = cryRpt.DataDefinition.ParameterFields;
            crParameterFieldDefinition2 = crParameterFieldDefinitions["RollNo"];
            crParameterValues = crParameterFieldDefinition2.CurrentValues;

            crParameterValues2.Add(crParameterDiscreteValue2);
            crParameterFieldDefinition2.ApplyCurrentValues(crParameterValues2);

非常感谢您的帮助。致谢

1 个答案:

答案 0 :(得分:0)

您要做的是遍历已检查项目列表,然后继续将值添加到参数中。这是一个可能指向正确方向的示例。

protected void setParameterList(String parameter, ListBox.SelectedObjectCollection selected, Boolean displayValue = false)
    {
        foreach (Infragistics.Win.ValueListItem item in selected)
        {
            ParameterDiscreteValue param = new ParameterDiscreteValue();
            if (displayValue)
            {
                param.Value = item.DisplayText;
            }
            else
            {
                param.Value = item.DataValue;
            }
            report.ParameterFields[parameter].CurrentValues.Add(param);
        }
    }