4

我在使用 .net 4.0 的 Crystal Report 2010 时遇到了一个可怕的问题(我使用的是固定的 13.0.1 版本,但已发布 13.0.4)。无论我尝试哪种方式,我总是会在第一次输入我的一个参数值时得到一个提示对话框。

CrystalReportViewer1.ReportSource = CustomerReport1;    
CustomerReport1.Database.Tables[0].SetDatasource ( this.dataset);        
CustomerReport1.SetParameterValue("PathLocation", Location.Text);

CustomerReport1.Parameter_PathLocation.CurrentValues.Add(Location.Text) // to be safe using CS 2010 for .net 4
CrystalReportViewer1.ReuseReportParametersOnRefresh = true; // to prevent from showing again and again.

我也试过这个:

CustomerReport1.Database.Tables[0].SetDatasource ( this.dataset);        
CustomerReport1.SetParameterValue("PathLocation", Location.Text);

CrystalReportViewer1.ReportSource = CustomerReport1;

和这个:

CustomerReport1.Database.Tables[0].SetDatasource ( this.dataset);        
CustomerReport1.Parameter_PathLocation.CurrentValues.Add(Location.Text)

CrystalReportViewer1.ReportSource = CustomerReport1; // the parameter in the report has Optional Parameter = false, Static , Multiple Value = false .

有人可以帮忙吗?我对此感到沮丧。它在以前的版本中有效,但现在我得到了这个提示框。

谢谢你。

4

2 回答 2

5

终于找到了解决办法。如果我们DataSourceParameterValue.

因此,如果我们将它们按以下顺序排列,其中任何一个都可以工作:

// First, call SetParameterValue. Then, call SetDatasource.     
CustomerReport1.SetParameterValue("PathLocation", Location.Text);
CustomerReport1.Database.Tables[0].SetDatasource(this.dataset);

CrystalReportViewer1.ReportSource = CustomerReport1;

谢谢你们。

于 2012-08-29T13:09:02.127 回答
0

创建参数,但不要使用选择公式 -> 记录为其分配公式。通过创建一个文本框、一个标签和一个按钮,从 vb 或 c#.net IDE 应用此参数。将选择公式放在单击按钮程序上。

于 2016-08-21T07:04:22.210 回答