Я пытаюсь обновить DataGridView через делегата.Это часть простого приложения, но первоначальный запрос генерируется за 4-5 секунд.Я хочу, чтобы FillSchema создала DataGridView, чтобы приложение запускалось быстро, а затем обновляло данные.Это мой первый набег на делегатов, поэтому всякая критика приветствуется.
Private Sub LoadGrid(ByVal loadType As String)
StringBuild()
If loadType = "Schema" Then
da.FillSchema(ds, SchemaType.Source, "Requests")
Else
da.Fill(ds, "Requests")
End If
End Sub
Private Sub LoadGridAsync()
Dim del As New delLoadGrid(AddressOf LoadGrid)
Dim cb As New AsyncCallback(AddressOf LoadGridCallback)
Dim result As IAsyncResult
result = del.BeginInvoke("Full", cb, del)
End Sub
Private Sub LoadGridCallback(ByVal result As IAsyncResult)
Dim delS As delLoadGrid
Dim delR As New delRefreshGrid(AddressOf RefreshGrid)
delS = CType(result.AsyncState, delLoadGrid)
delS.EndInvoke(result)
Invoke(delR)
End Sub
Private Sub RefreshGrid()
dgvSign.Update()
End Sub
Я могу отладить файл print в подпрограмме RefreshGrid, и он определенно срабатывает.Есть идеи, почему он не обновляется?