Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/268.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如果crystal report中没有值传递给参数,如何显示所有值?_C#_Crystal Reports_Crystal Reports 2008 - Fatal编程技术网

C# 如果crystal report中没有值传递给参数,如何显示所有值?

C# 如果crystal report中没有值传递给参数,如何显示所有值?,c#,crystal-reports,crystal-reports-2008,C#,Crystal Reports,Crystal Reports 2008,我有一个包含参数字段的Crystal报告。只要我给参数字段赋值,它就可以正常工作。但我想做的是,当没有传递任何参数时,我想显示所有的值。当我不传递任何参数时,会出现一个对话框,告诉我选择要传递给参数的值。为了解决这个问题,我尝试将我使用的所有值复制到参数,并将它们存储在一个数组中。我试图通过此阵列,但失败。有谁能帮我渡过这一关吗 旁白:阵列只是因为我想不出别的东西 rpt_Uni uniRpt = new rpt_Uni(); uniRpt.SetDataSource(UniDS.Table

我有一个包含参数字段的Crystal报告。只要我给参数字段赋值,它就可以正常工作。但我想做的是,当没有传递任何参数时,我想显示所有的值。当我不传递任何参数时,会出现一个对话框,告诉我选择要传递给参数的值。为了解决这个问题,我尝试将我使用的所有值复制到参数,并将它们存储在一个数组中。我试图通过此阵列,但失败。有谁能帮我渡过这一关吗

旁白:阵列只是因为我想不出别的东西

rpt_Uni uniRpt = new rpt_Uni();  
uniRpt.SetDataSource(UniDS.Tables["Uni"]);

if (cmb_Report.SelectedIndex == 0)
{ uniRpt.SetParameterValue("UniParam", txt_UniName.Text); }
else
{ 
    uniRpt.SetParameterValue("UniParameter", ""); 
}

crystalReportViewer1.ReportSource = uniRpt;
crystalReportViewer1.Refresh();

如果您可以访问整个参数值列表(或者它是静态的,不会更改),则可以执行以下操作:

StringVar ParameterList;
If IsNull({?InputParameter}) then
  // to-do assemble your entire list into one string: ThatString
  ParameterList := ThatString;
else
  ParameterList := ToText({?InputParameter});

所有值都是静态列表吗?如果是,您可以硬编码。您是要显示为参数选择的值还是其所有可用值?如果文本框为空,则显示所有可用值。但是如果文本框中有什么东西;这将用作参数