Arrays 处理水晶报告
我设置了多个报表查看器,每个查看器都可以打开多个crystal报表。 这一切都很好 我想简化在DisposeOfReports()事件中处理报告的方式 此时此刻,我做了以下工作:Arrays 处理水晶报告,arrays,vb.net,crystal-reports,idisposable,Arrays,Vb.net,Crystal Reports,Idisposable,我设置了多个报表查看器,每个查看器都可以打开多个crystal报表。 这一切都很好 我想简化在DisposeOfReports()事件中处理报告的方式 此时此刻,我做了以下工作: If (_rpt1 IsNot Nothing) Then _rpt1.Close() _rpt1.Dispose() End If If (_rpt2 IsNot Nothing) Then _rpt2.Close() _rpt2.Dispose() End If
If (_rpt1 IsNot Nothing) Then
_rpt1.Close()
_rpt1.Dispose()
End If
If (_rpt2 IsNot Nothing) Then
_rpt2.Close()
_rpt2.Dispose()
End If
这可以使用数组来完成吗
我在想,每次生成报告时,我都可以将报告添加到数组中
然后在DisposeOfReports()事件中执行以下操作:
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)
请大家反馈给我,让我知道这是一种有效的方法,还是有更好的方法
干杯。我看你的方法没有错。如果你能让它发挥作用,你会得到更多的力量。我没有显式地关闭或处置控件,但这并不意味着我不应该这样做。