Show a ProgressBar While Processing on a Background Thread : ProgressBar « Windows Presentation Foundation « VB.Net

Show a ProgressBar While Processing on a Background Thread

Show a ProgressBar While Processing on a Background Thread

<Window x:Class="WpfApplication1.Window1"
    Title="WPF" Height="100" Width="200">
        <ProgressBar Name="progressBar" Margin="4"/>
        <Button Name="button" Click="button_Click">Start</Button>

Imports System.ComponentModel
Imports System.Threading
Imports System.Windows
Imports System.Windows.Input

Namespace WpfApplication1
  Public Partial Class Window1
    Inherits Window
    Private worker As New BackgroundWorker()

    Public Sub New()
      worker.WorkerReportsProgress = True
      AddHandler worker.DoWork, New DoWorkEventHandler(AddressOf worker_DoWork)
      AddHandler worker.RunWorkerCompleted, New RunWorkerCompletedEventHandler(AddressOf worker_RunWorkerCompleted)
      AddHandler worker.ProgressChanged, AddressOf worker_ProgressChanged
    End Sub

    Private Sub button_Click(sender As Object, e As RoutedEventArgs)
      Me.Cursor = Cursors.Wait
      button.IsEnabled = False
    End Sub

    Private Sub worker_RunWorkerCompleted(sender As Object, e As RunWorkerCompletedEventArgs)
      Me.Cursor = Cursors.Arrow
      If e.[Error] IsNot Nothing Then
      End If
      button.IsEnabled = True
    End Sub
    Private Sub worker_DoWork(sender As Object, e As DoWorkEventArgs)
      For i As Integer = 1 To 100
    End Sub

    Private Sub worker_ProgressChanged(sender As Object, e As ProgressChangedEventArgs)
      progressBar.Value = e.ProgressPercentage
    End Sub
  End Class
End Namespace


Related examples in the same category

1.Indeterminate ProgressBarIndeterminate ProgressBar
2.Create a ProgressBar.Create a ProgressBar.
3.ProgressBar with five iterationsProgressBar with five iterations
4.ProgressBar with infinite iterationsProgressBar with infinite iterations
5.Indeterminate ProgressBarIndeterminate ProgressBar