使用单个集合来保存所有参数

时间:2016-08-10 20:15:42

标签: c# crystal-reports

我在表单上接受用户输入并将其绑定到一个参数,然后该参数将绑定到我的报表。我可以使用单个集合来保存所有参数吗?为我想要传递给报告的每个项目创建一个集合和一个参数似乎是多余的。

为了按照我的要求进行这项工作,我必须为我的表单上的每个参数添加一个集合:

// #1 Setup a collections
    ParameterValues firstNameCollection = new ParameterValues();
    ParameterValues lastNameCollectoin = new ParameterValues();

然后我创建了实际参数:

// #2 Set the parameters
    ParameterDiscreteValue firstNameParam = new ParameterDiscreteValue();
    ParameterDiscreteValue lastNameParam = new ParameterDiscreteValue();

绑定值:

// #3 Set the values
    firstNameParam.Value = "First Name";
    lastNameParam.Value = "Last Name";

在集合中添加了参数:

// #4 Add the parameters to the collection
    firstNameCollection.Add(firstNameParam);
    lastNameCollectoin.Add(lastNameParam);

并将集合应用于表单:

// #5 Apply the collections to the report
    MyReport.DataDefinition.ParameterFields["FirstName"].ApplyCurrentValues(firstNameCollection);
    MyReport.DataDefinition.ParameterFields["LastName"].ApplyCurrentValues(lastNameCollectoin);

1 个答案:

答案 0 :(得分:1)

在C#中填充Crystal Report参数的正确方法。

MyReport.SetParameterValue("NameOfReportParam", Object);

在最初的问题中,我创建参数 vs 引用它,如下所示。