Я так запутался в этом коде ... возможно, поэтому он не работает.
Во-первых, когда вы устанавливаете ItemsSource, вы вызываете GetReport () без параметра. GetStatusReport () никогда не вызывается, даже если он поднимает XML. Внутри GetStatusReport вы возвращаете statusReport, который является пустым списком ... и вы ничего не делаете с отчетом, который является фактическим запросом. Внутри запроса вы вызываете GetStatus, который не определен, хотя я считаю, что это должен быть GetReport.
Аааа ... со всем этим, я думаю, вы хотите переписать весь этот код, чтобы он был примерно таким:
Private Sub Page_Loaded(ByVal sender As Object, ByVal e As RoutedEventArgs)
DataGrid1.ItemsSource = GetStatusReport()
End Sub
Public Function GetStatusReport() As List(Of Table)
Dim statusReport As New List(Of Table)()
Dim doc As XElement = XElement.Load("Data/Report.xml")
statusReport = (From row In doc.Elements() _
Select GetReport(row)).ToList()
Return statusReport
End Function
Private Function GetReport(ByVal row As XElement) As Table
Dim s As New Table()
s.JobID= row.Attribute("ID").Value
s.VenueName= row.Attribute("Name").Value)
Return s
End Function
End Class
Помимо этих исправлений, я не могу сказать вам, если это правильно или нет ... Где это терпит неудачу?