gracias por el consejo, estoy buscando informacion al respecto y no logro integrar el BackgroundWorker1 en mi aplicación, podrias, segun el codigo que envie antes, en que parte deberia poner este codigo que encontre:
Código:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
BackgroundWorker1.RunWorkerAsync()
If BackgroundWorker1.CancellationPending Then
Exit Sub
End If
End Sub
Private Sub BackgroundWorker1_DoWork(ByVal sender As Object, ByVal e As System.ComponentModel.DoWorkEventArgs) Handles BackgroundWorker1.DoWork
Dim i As Integer = 0
For i = 0 To 100
BackgroundWorker1.ReportProgress(i)
Next
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
BackgroundWorker1.CancelAsync()
Label1.Text = "Proceso cancelado"
MsgBox(ProgressBar1.Value)
End Sub
Private Sub BackgroundWorker1_ProgressChanged(ByVal sender As Object, ByVal e As System.ComponentModel.ProgressChangedEventArgs) Handles BackgroundWorker1.ProgressChanged
ProgressBar1.Value = e.ProgressPercentage
End Sub
Private Sub BackgroundWorker1_RunWorkerCompleted(ByVal sender As Object, ByVal e As System.ComponentModel.RunWorkerCompletedEventArgs) Handles BackgroundWorker1.RunWorkerCompleted
Label1.Text = "Proceso completado"
End Sub
yo lo intente poniendo en el evento click de mi boton:
Código:
BackgroundWorker1.RunWorkerAsync()
If BackgroundWorker1.CancellationPending Then
Exit Sub
End If
y cambiando esto:
Código:
Private Sub BackgroundWorker1_DoWork(ByVal sender As Object, ByVal e As System.ComponentModel.DoWorkEventArgs) Handles BackgroundWorker1.DoWork
Dim i As Integer = 0
For i = 0 To 100
BackgroundWorker1.ReportProgress(i)
Next
End Sub
por esto:
Código:
Private Sub BackgroundWorker1_DoWork(ByVal sender As Object, ByVal e As System.ComponentModel.DoWorkEventArgs) Handles BackgroundWorker1.DoWork
Dim i As Integer = 0
For i = 0 To dgv1.rows.count -2
BackgroundWorker1.ReportProgress(i)
Next
End Sub
pero nada, sigue pasando lo mismo, que hace el trabajo pero sin mostrar el progressbar, y dejando de responder si se cambia de ventana o se intenta hacer click en el boton cancelar