C# 如果crystal report中没有值传递给参数,如何显示所有值?
我有一个包含参数字段的Crystal报告。只要我给参数字段赋值,它就可以正常工作。但我想做的是,当没有传递任何参数时,我想显示所有的值。当我不传递任何参数时,会出现一个对话框,告诉我选择要传递给参数的值。为了解决这个问题,我尝试将我使用的所有值复制到参数,并将它们存储在一个数组中。我试图通过此阵列,但失败。有谁能帮我渡过这一关吗 旁白:阵列只是因为我想不出别的东西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
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});
所有值都是静态列表吗?如果是,您可以硬编码。您是要显示为参数选择的值还是其所有可用值?如果文本框为空,则显示所有可用值。但是如果文本框中有什么东西;这将用作参数