У меня настроено несколько средств просмотра отчетов, каждый из которых может открывать несколько отчетов Crystal.
Это все отлично работает.
Я хочу упорядочить порядок удаления отчетов в событии DisposeOfReports ().
В минуту я делаю следующее:
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)
Пожалуйста, можете ли люди сообщить мне об этом и сообщить мне, является ли это правильным методом или есть лучшие способы сделать это?
Приветствие.