水晶报表参数循环赋值
ParameterFields paramFields = new ParameterFields();
//循环NewTabe中的列数
for (int i = 0; i < NewTable.Columns.Count; i++)
{
//循环NewTabe中的行数
for (int j = 0; j < NewTable.Rows.Count - 1; j++)
{
ParameterField paramField = new ParameterField();
ParameterDiscreteValue discreteVal = new ParameterDiscreteValue();
// 第一个参数是具有多个值的离散参数。设置参数字段的名称,它必须和报表中的参数相符。
paramField.ParameterFieldName = NewTable.Columns[i].ToString();
// 设置离散值并将其传递给该参数。
discreteVal.Value = NewTable.Rows[j][i].ToString();
paramField.CurrentValues.Add(discreteVal);
//当for循环循环到最后一次时 将该参数添加到参数字段集合。
if (j == NewTable.Rows.Count - 2)
{
paramFields.Add(paramField);
}
}
}
// 将参数字段集合放入查看器控件
crystalReportViewer1.ParameterFieldInfo = paramFields;
但是运行后显示时只显示最后一行记录,其他的都被覆盖了,所以想请教大家怎么解决这个覆盖的问题啊?