我设置了许多报表查看器,每个查看器都可以打开许多Crystal报表。
这一切都很好。
我希望简化在DisposeForReports()事件中如何处理报表。
我现在做的是:
If (_rpt1 IsNot Nothing) Then
_rpt1.Close()
_rpt1.Dispose()
End If
If (_rpt2 IsNot Nothing) Then
_rpt2.Close()
_rpt2.Dispose()
End If
这可以用数组来完成吗?
我在想,每次生成报告时,我都可以将报告添加到数组中。
然后在DisposeForReports()事件中执行以下操作:
If (reportsArray IsNot Nothing) Then
For Each report As CrystalDecisions.CrystalReports.Engine.ReportClass In reportsArray
If (report IsNot Nothing) Then
report.Close()
report.Dispose()
End If
Next
reportsArray = Nothing
End If
对于此方法,我将像这样声明ReportsArray:
Private reportsArray As New List(Of CrystalDecisions.CrystalReports.Engine.ReportDocument)
请大家反馈给我这个,让我知道这是一个有效的方法,或如果有更好的方法做到这一点?
干杯。