Crystal Report动态位置

时间:2014-04-24 17:32:15

标签: c# winforms crystal-reports

我希望我的水晶报告,如果项目被移动到另一个文件夹,在不更改代码的情况下继续工作。现在我的WinForm

中的代码
ReportDocument cryRpt = new ReportDocument();
cryRpt.Load(@"Z:\Tempesta\Area Progetto\Area_Progetto_13_03_2014\Area_Progetto_27_02_2014\Area_Progetto_DATA_MAGAZINE\Data_Magazine\Data_Magazine\CrystalReport1.rpt");
crystalReportViewer1.ReportSource = cryRpt;
crystalReportViewer1.Refresh();

2 个答案:

答案 0 :(得分:0)

如果你不想改变你的代码,只需在.txt文件中写入路径并在打开水晶报告时阅读它就不可能。 如果路径更改,只需更改.txt文件中的路径值。

也许它会帮助你。

答案 1 :(得分:0)

如果报告存储在相对于应用程序的位置,则可以使用Environment.CurrentDirectory生成路径。

ReportDocument cryRpt = new ReportDocument();
string reportPath = Path.Combine(Environment.CurrentDirectory, "CrystalReport1.rpt");
cryRpt.Load(reportPath);
crystalReportViewer1.ReportSource = cryRpt;
crystalReportViewer1.Refresh();
相关问题