C# 将参数传递给crystal report需要参数值

C# 将参数传递给crystal report需要参数值,c#,crystal-reports,parameter-passing,C#,Crystal Reports,Parameter Passing,我有一个crystal report,我正在尝试将标签的文本传递给crystal report。但每当我尝试这样做时,它会询问参数值。我有另一种形式,它做同样的事情,但效果很好。以下是我尝试过的代码: crystalReportViewer1.RefreshReport(); ParameterFields paramFields = new ParameterFields(); ParameterField paramField = new P

我有一个crystal report,我正在尝试将标签的文本传递给crystal report。但每当我尝试这样做时,它会询问参数值。我有另一种形式,它做同样的事情,但效果很好。以下是我尝试过的代码:

 crystalReportViewer1.RefreshReport();
            ParameterFields paramFields = new ParameterFields();
            ParameterField paramField = new ParameterField();
            ParameterDiscreteValue paramDiscreteValue = new ParameterDiscreteValue();
            paramField = new ParameterField();
            paramDiscreteValue = new ParameterDiscreteValue();
            paramField.Name = "kot";
            paramDiscreteValue.Value = NewOrderBL.KOTNo;
            paramField.CurrentValues.Add(paramDiscreteValue);
            paramFields.Add(paramField);

            paramField = new ParameterField();
            paramDiscreteValue = new ParameterDiscreteValue();
            paramField.Name = "TotalVat";
            paramDiscreteValue.Value = NewOrderBL.totalvat;
            paramField.CurrentValues.Add(paramDiscreteValue);
            paramFields.Add(paramField);

            paramField = new ParameterField();
            paramDiscreteValue = new ParameterDiscreteValue();
            paramField.Name = "TotalService";
            paramDiscreteValue.Value = NewOrderBL.totalservicetax;
            paramField.CurrentValues.Add(paramDiscreteValue);
            paramFields.Add(paramField);



            paramField = new ParameterField();
            paramDiscreteValue = new ParameterDiscreteValue();
            paramField.Name = "TotalAmount";
            paramDiscreteValue.Value = NewOrderBL.totalamount;
            paramField.CurrentValues.Add(paramDiscreteValue);
            paramFields.Add(paramField);


            paramField = new ParameterField();
            paramDiscreteValue = new ParameterDiscreteValue();
            paramField.Name = "TotalServiceTax";
            paramDiscreteValue.Value = NewOrderBL.totalservicetax1;
            paramField.CurrentValues.Add(paramDiscreteValue);
            paramFields.Add(paramField);
NewOrderBL是一个类文件,我在其中定义了上述变量 公共静态十进制(变量名)


请帮助。

下一步如何处理参数字段?从代码中看,您并没有实际向报表文档本身添加任何参数/值

ParameterFields paramFields=新的ParameterFields()

备选方案A: 将paramFields设置为报表文档的ParameterFields属性

备选案文B: 也许可以考虑使用ReportDocument.SetParameterValue

下一步您将如何处理参数字段?从代码中看,您并没有实际向报表文档本身添加任何参数/值

ParameterFields paramFields=新的ParameterFields()

备选方案A: 将paramFields设置为报表文档的ParameterFields属性

备选案文B: 也许可以考虑使用ReportDocument.SetParameterValue
我已经修好了。这是愚蠢的遗漏只是补充

crystalReportViewer1.ParameterFieldInfo = paramFields;

下面的整体,它工作良好。

我已修复它。这是愚蠢的遗漏只是补充

crystalReportViewer1.ParameterFieldInfo = paramFields;
下面的整体,它的工作很好