Me.BeginInvoke(New NotifyProgressHandler(AddressOf Me.NotifyProgress), i)
求教:上条语句中,我想 i 的地方传多个参数,不知怎么操作?
我试传类,和objict,可是不行。
源代码在下面。
*****************************************
'进度通知处理方法,显示完成百分数
Private Sub NotifyProgress(v As Integer)
Dim win As WaitWindow = WaitWindow.GetInstance()
win.ProgressValue = v
'当前进度
Dim msg As String = ("已完成: " & v.ToString & "/") + win.ProgressMaxValue.ToString
win.ProgressInfo = msg
win.Title = "数据导入中" + v.ToString
End Sub
'执行长时间任务处理
Private Sub DoLongTimeTask()
Dim i As Integer = 0
'因为有可能用户会取消,要随时判断取消标记
While i < xiangdan.Count AndAlso Not isUserCancel
Thread.Sleep(1000)
'耗时工作
Console.WriteLine("当前次数:" & i + "处理条数:" + count.ToString + "条")
'通知等待窗口当前进度(BeginInvoke)
Me.BeginInvoke(New NotifyProgressHandler(AddressOf Me.NotifyProgress), i)
i += 1
End While
'任务处理完毕
If Me.InvokeRequired Then
Me.Invoke(New MethodInvoker(AddressOf Me.EndTask))
Else
Me.EndTask()
End If
End Sub
------解决思路----------------------
NotifyProgressHandler 你要先改这个委托。这个改成多参数后,才能改其他为多参数