ProgressBar未更新VB.NET

ProgressBar未更新VB.NET,vb.net,progress-bar,Vb.net,Progress Bar,我有一个进度条和一个控制它的计时器。但是由于某些原因,progressBar没有更新,但是progressBar的值随着计时器的运行而变化,我做了一些调试,并且UI似乎没有更新progressBar,因为值和计时器工作得很好。这是我的密码 Private Sub timerReserve_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles timerReserve.Tick

我有一个进度条和一个控制它的计时器。但是由于某些原因,progressBar没有更新,但是progressBar的值随着计时器的运行而变化,我做了一些调试,并且UI似乎没有更新progressBar,因为值和计时器工作得很好。这是我的密码

     Private Sub timerReserve_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles timerReserve.Tick
         If progressBar1.Value = progressBar1.Maximum Then
             timerReserve.Stop()
             ....(database updates)
         Else
             countdown +=1 
             progressBar1.Value += 1
         End If
     End Sub
我不知道发生了什么,它应该可以正常工作


提前感谢

在进度条属性中,将步长属性设置为与正在进行的增量相同的大小(正在进行+=1的增量)

然后在计时器代码中,强制进度条显示更改

Private Sub timerReserve_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles timerReserve.Tick
  If progressBar1.Value = progressBar1.Maximum Then
    timerReserve.Stop()
    ....(database updates)
  Else
    countdown +=1 
    progressBar1.Value += 1
    ' ** FORCE UPDATE **
    progressBar1.PerformStep()
  End If
End Sub

这可能是因为计时器的运行速度快于用户界面的刷新速度。计时器的间隔是多少?我的间隔是1000ms,1秒ProgressBar的最大值是多少?增量很好,在这种情况下,让我们假设
a
a+=1
相当于
a=a+1